Adaptive AI fitness coaching
FitMind AI
A coach that re-plans around you — and asks before it changes anything.
- Role
- Solo · Android + backend
- Focus
- AI · Mobile
Repository is private — walkthrough available on request.
- 941
- tests
- 8
- decision engines
- 43
- endpoints
- R8
- signed APK + AAB
Overview
A Kotlin/Jetpack Compose Android client on a Flask + MySQL backend, with a Gemini-powered coach that proposes changes to your training and nutrition plan — and never applies one without your say-so.
What it does
- A week of workouts and meals sized to your TDEE — and your food budget
- Form-efficiency engine corrects logged calories by rep quality, not just duration
- Behavioural classifier reads weeks of sessions: consistent, sporadic, overreaching, declining
- Plan-change proposals you approve or revert, fingerprinted against the data they used
- An AI coach that answers with your own numbers
Engineering decisions
01
Stale evidence retires a proposal
Each proposal records a fingerprint of its data; if the evidence moves on, it is retired rather than silently applied.
02
Honest about what it doesn’t know
Predictions are gated on data sufficiency — goal projection declines to draw a confident line through three weigh-ins.
03
Architecture that is enforced, not described
presentation has zero imports from data, and domain has zero imports from either.
Stack
- Android
- Kotlin 2.2Jetpack ComposeMaterial 3HiltRoomWorkManager
- Backend
- FlaskSQLAlchemyAlembicMySQL 8Gunicorn
- AI
- Google Gemini