Personal app Local-first workout logger
A workout app that keeps results honest
My own training app: an AI coach writes each session, I log what I actually did on my phone, and the coach plans the next session from those results. Below is the real app, running with a fictional athlete.
Timeline: I began the training system in June 2025 and improved it over many rounds. Its coaching memory moved into version control in June 2026, and this app was built in September 2026.
Try this
- Complete the readiness check, then Start workout.
- Open a block, enter reps, and check a set — or use Same as last set · complete. Suggested weights stay suggestions until a set is checked.
- The session's reps-in-reserve target sits under the title; progress and Saved on device update as you go.
- Open History, then Reset demo in the yellow bar.
The problem it solves
- A suggested weight must never be mistaken for what was actually lifted.
- Logging has to be quick mid-workout, on a phone, without signal — every change is saved on the device as it happens.
- A finished session is history: read-only, exportable as JSON or Markdown, never rewritten.
My part
I defined the workflow and the rules — what counts as done, what a suggestion is, what must never be overwritten — and directed AI coding assistants to build and test it, alongside a written coaching memory any assistant reads first.



What's real, and what's different in this demo
- Real: the app's own interface and logic (React and TypeScript), saving to on-device storage, the readiness gate, suggested-versus-confirmed loads, optional work, finish checks, history and exports.
- Different: a fictional athlete and session; demo storage kept separate from any real records; sync to the coach's repository and offline installation turned off; a few readiness labels made generic for privacy.
- Reps in reserve is a session target in this app, not a per-set entry.