Why I built it

I wanted my training history to be easy to use. Lifting, cardio, hikes, climbing, and body measurements each tell part of the story. Bringing them together lets me move from a chart to the sessions behind it, compare periods, and ask better questions about my training.

How it works

  1. Explore training and body trends, then inspect the dated records behind them.
  2. Log completed work across lifting, cardio, hiking, and climbing.
  3. Use completed sets and reps to calculate the next workout in the training progression.
  4. Ask the AI coach to interpret a pattern with relevant training records at hand.

How I shaped it

Make the record reliable enough to act on.

A workout plan and a completed workout are different records. I wanted missed reps and partial sets to survive logging, so charts and progression would reflect what actually happened. Consistent exercise names keep the same lift together across sessions.

Using the app also exposed a logging failure: changing the activity type in the entry form could send the wrong kind of record. I worked with AI to correct that routing and reject invalid requests, so a successful save meant the entry had actually been accepted.

The full app calls the Gemini API with relevant training records and current workout context. I added persistent coach notes for follow-up across conversations. The portfolio includes a saved coaching exchange, so visitors can see how that context shapes the advice.