MKO — Portfolio
Mohamed Karim OuertataniIngénieur Full-StackFull-Stack Engineer
MobileIAWeb

FitForge AI

Coaching sportif

Juillet 2026 – Août 2026 · Stage · CNI

0vue
FitForge AI — 1
FitForge AI — 3
FitForge AI — 2

Application mobile de fitness reliant adhérents et coachs : programmes générés par IA, nutrition par photo ou à la voix, suivi du sommeil, score de performance et chat en temps réel, avec une console d'administration web.

En chiffres

0

endpoints REST

0

tables PostgreSQL

0

tests automatisés

Backend 138Flutter 56

0

exercices avec vidéo

Étude de cas

Le défi

Les applications de fitness séparent l'entraînement, la nutrition et le suivi par un coach, et une IA générative laissée libre invente volontiers des exercices ou donne des conseils risqués. Il fallait tout réunir dans une seule application, avec une IA réellement utile mais strictement encadrée côté serveur.

Architecture

Clients

  • App Flutter (Riverpod, go_router)
  • Console admin Next.js

API Spring Boot

  • Spring Security + JWT
  • REST /api/v1
  • WebSocket STOMP
  • Services métier en couches

Données

  • PostgreSQL 16
  • Migrations Flyway
  • Stockage des médias

Services externes

  • Gemini
  • ExerciseDB
  • USDA
  • Open Food Facts

Choix techniques

01

Une IA encadrée

Gemini choisit uniquement dans un catalogue d'exercices numéroté : il ne peut pas inventer d'exercice. Le coach IA reste limité au sport, avec un garde-fou sur les blessures.

02

Clés et catalogue protégés

Les clés d'API ne quittent jamais le backend, et le catalogue de 220 exercices est figé dans une migration : une base neuve se recrée sans rappeler l'API.

03

Du temps réel

Le chat coach–adhérent passe par WebSocket/STOMP, authentifié par JWT, avec photos, messages vocaux et documents.

04

Une architecture testée

Controller → Service → Repository avec des DTO immuables, validé par 138 tests backend et 56 tests Flutter.

Fonctionnalités

  • Programme d'entraînement généré par IA (Gemini) à partir d'un catalogue d'exercices numéroté, sans exercice inventé
  • Coach IA disponible 24/7, limité au sport, avec garde-fou sur les blessures
  • Nutrition : recherche USDA et Open Food Facts, analyse de photo de repas et saisie vocale
  • 220 exercices avec vidéos, heatmap musculaire 2D/3D et score hebdomadaire sur 100
  • Chat en temps réel coach–adhérent (WebSocket/STOMP) avec photos, messages vocaux et documents
  • Console d'administration Next.js : validation des coachs, signalements et supervision de l'IA

Captures d'écran (18)

FitForge AI — Coaching sportif — Captures d'écran 1
FitForge AI — Coaching sportif — Captures d'écran 2
FitForge AI — Coaching sportif — Captures d'écran 3
FitForge AI — Coaching sportif — Captures d'écran 4

Un mot sur ce projet

Une question, un avis, une idée ?

Écrivez-moi directement d'ici. Votre message n'est pas publié : je suis le seul à le lire.

Privé : jamais affiché sur le site