Case study
LegDay
A fitness app designed to be needed less over time.
legday.onlineOpen ↗

Loading live site…
LegDay helps people build exercise into their actual lives. Unlike engagement-maximising fitness apps, its honest goal is for you to need it less as the habit sticks — closer to “designed to be deleted” than to a streak casino.
The problem
Most fitness apps optimise for daily opens, not for people actually training. They freeze your onboarding answers, jump difficulty after one good session, and quietly drop the muscle groups you skip — so the plan drifts away from what your body needs.
The approach
- Started with European market research, a pricing & monetisation study and a motivation-first feature roadmap before writing product code.
- Treated onboarding answers as living, revisitable state rather than a snapshot taken at signup.
- Progression happens over weeks: a harder variation is only offered after an exercise has been completed repeatedly across sessions.
- Coverage is a hard constraint — every muscle group gets trained. Preferences only choose which exercise fills each slot; swiping left never deletes a muscle group.
- “Weak”, “hurt” and “hated” are modelled as three different states with opposite prescriptions instead of one vague “struggling” control.
The outcome
- Live at legday.online with a static frontend and a Node/Express API on Railway, auto-deployed from main.
- Postgres schema managed through versioned migrations; a pure-logic backend test suite runs against a snapshot of the live exercise catalogue.
- Blueprint-first workflow: every feature is designed in a written blueprint before it's implemented and reviewed.
Next case study
VerifiedMRR