Aller au contenu
Dimitri Robiere PerrietD. R. PerrietCaen, FR — --:--:--FR · EN

Welva, app iOS de nutrition et musculation en SwiftUI

● En ligne
Client
Projet personnel
Rôle
Développeur full-stack et mobile
Durée
en cours
Année
2025
Stack
Swift · SwiftUI · Cloudflare Workers · Cloudflare D1 · Vectorize · Workers AI · RevenueCat · Next.js
Welva, app iOS de nutrition et musculation en SwiftUI — illustration
Fig. 01 — Welva, app iOS de nutrition et musculation en SwiftUI, illustration
(00) — En bref

Welva, app iPhone et Apple Watch en SwiftUI : nutrition, poids, musculation et coach IA à partir des données Apple Santé, avec une API sur Cloudflare Workers.

(01)

Contexte

Welva, app iOS de santé et de musculation, est né sous le nom FitTrack en février 2025, d’un besoin personnel : suivre son poids, sa nutrition et ses entraînements sans jongler entre plusieurs apps qui ne se parlent pas. La première version, en React Native avec Expo, lisait déjà Apple Santé et calculait des objectifs nutritionnels.

Le projet a grandi jusqu’à devenir un produit publié sur l’App Store. En juillet 2026, FitTrack est devenu Welva, et l’app a été réécrite en Swift natif pour sa V4, avec une app Apple Watch, un abonnement Welva Plus et un site vitrine sur welva.app.

(02)

Challenge

Une app de santé ne vaut que par la justesse de ses chiffres. Les calories devaient venir d’une source fiable, une séance enregistrée à la montre ne devait apparaître qu’une fois dans Santé, et la synchronisation devait survivre à une réinstallation ou à un changement d’appareil.

L’IA posait un autre problème : le coach, l’analyse photo des repas et les bilans devaient s’appuyer sur des données calculées, pas les inventer. Il fallait enfin passer la revue d’Apple, qui exige des déclarations de confidentialité exactes et un parcours d’achat sans faille.

(03)

Approche

J’ai réécrit l’app en SwiftUI, découpée en packages, avec une app Watch qui compte les répétitions et apprend les mouvements sur machine à partir des séries confirmées. Le catalogue compte 425 exercices illustrés, une carte musculaire qui s’allume selon la séance, la saisie vocale des séries (« cent kilos, dix répétitions »), des widgets et des Live Activities sur l’écran verrouillé.

Côté serveur, un Worker Cloudflare (Hono, D1, KV, R2) gère Sign in with Apple, la synchronisation par catégories, l’export RGPD et un serveur MCP pour brancher ses données sur un assistant IA. La recherche d’aliments croise la table Ciqual 2025 de l’ANSES et Open Food Facts grâce à des embeddings Workers AI dans Vectorize, et l’analyse photo des repas tourne en tâche de fond avec Cloudflare Workflows. L’abonnement passe par RevenueCat, et le contrat d’API est généré en OpenAPI depuis les schémas zod.

(04) — Résultats

Chiffres clés
1147
commits sur les quatre dépôts
425
exercices illustrés au catalogue
697
tests automatisés côté API
iPhone · Apple Watch
plateformes
← Projet précédent01 · Intranet sur mesure Next.js pour une agence webProjet suivant03Imagenerator, studio de génération d’images par IA