2026

Gestion alimentaire

Une application personnelle pour planifier les repas, noter ce que l’on mange et suivre calories et macros face à un objectif calculé selon le corps et l’activité. Elle est aussi exportée en application mobile avec Capacitor.

Next.jsReactTypeScriptPrismaPostgreSQLNextAuth.jsTailwind CSSZodZustandRechartsCapacitor
Gestion alimentaire — screenshot 1
1 / 7

Le défi

Les applis de calories génériques traitent un repas comme un résultat de recherche. Elles relient rarement une recette personnelle, une semaine planifiée, et ce qui a vraiment été mangé. Un tableur peut faire le calcul, mais les portions, les unités et les jours se dégradent vite. La difficulté était de garder une seule source de vérité. Un aliment peut être en grammes, en millilitres ou à la pièce. Le total d’une recette doit se recalculer quand un ingrédient change. Le journal doit comparer le prévu et le réel, sur la journée Europe/Paris, sans mélanger les données de deux comptes.

Mon approche

Next.js 16 (App Router) et React 19 côté interface, PostgreSQL et Prisma 7 pour les données. NextAuth gère le mot de passe et l’OAuth. Les formulaires sont validés avec Zod et React Hook Form. Zustand met en cache les aliments, le planning et le journal côté client. Les graphiques passent par Recharts. L’interface est en Tailwind CSS avec des composants Radix, et une navigation basse sur mobile. La même interface est aussi exportée en application mobile avec Capacitor. Les calculs nutritionnels restent dans des fonctions pures. Les totaux d’une recette sont calculés ingrédient par ingrédient (pour 100 g, 100 ml, ou à la pièce) puis enregistrés sur la recette pour que les listes restent rapides. Le calculateur d’objectif est la même fonction dans l’API et dans le formulaire : métabolisme, dépense, décalage calorique, puis macros. « Aujourd’hui » et les semaines utilisent le fuseau Europe/Paris, y compris côté serveur.

Le résultat

Un produit utilisable pour la boucle nutrition du quotidien : aliments, recettes, planning de la semaine, journal, objectifs et tableau de bord sur 14 jours. Modifier une recette met à jour ses calories et ses macros. La grille de la semaine peut être dupliquée. L’écran d’objectifs montre la cible calculée à côté de ce qui a été consommé. C’est un projet personnel full-stack, du schéma jusqu’à la mise en page mobile, conçu pour servir tous les jours plutôt que comme une démo de page d’accueil. L’application web est aussi exportée en application mobile avec Capacitor.

Points clés

Nutrition
Full-stack
Dashboard
Produit personnel
Mobile App

Stack technique

Next.jsReactTypeScriptPrismaPostgreSQLNextAuth.jsTailwind CSSZodZustandRechartsCapacitor