← back to the timeline
Jun 19 2026

four things got done: The Program tab got the full redesign. Tap any of these to read the whole thing.

The Program tab got the full redesign

The Program tab, the screen that shows your 12-week plan and the screen that shows a single day's exercises, was the last part of the app s…

Done
the problem

The Program tab, the screen that shows your 12-week plan and the screen that shows a single day's exercises, was the last part of the app still wearing the old look. Everything else (workouts, settings) had moved to the clean black "Brutalist" style, so the Program tab stuck out. It was also a bit dumb: it listed the plan but never told you what to do next, never showed how you did last time, and never explained why a deload week was a deload.

what I changed

First I rebuilt both screens in fake-data prototypes so I could see the new look before touching the real app, and got it signed off. Then a panel of four reviewers (a product person, a designer, a serious-lifter, and a "keep it simple" skeptic) suggested upgrades and I picked the good ones. The real work shipped as six small pieces:

  • Both Program screens restyled to the black/condensed/volt-lime identity.
  • A "NEXT UP" card at the top of the calendar with a big Start button, the screen finally tells you what to train next.
  • Each exercise now shows what you lifted last time (with an up arrow if you're improving) and your floor/stretch targets.
  • Completed days now show the coach's note explaining why it picked each weight (we already wrote that note, we were just throwing it away).
  • A one-line reason on deload weeks, and the per-lift progress strip now shows trend arrows and "transitioning" markers.

Where the data didn't really exist (a fake session-length, a made-up deload percentage), I deliberately left it out rather than invent numbers.

how I tested it

Each piece built green on its own; I scanned every change to confirm it only touched the look, not the behaviour, before merging. Then I built the whole app together (green) and ran it in the simulator with sample data to photograph both real screens, the new calendar and day view look right in the actual app, not just the mockups.

All six pieces merged (PRs 508, 509, 510, 511, 512, 514) under umbrella 507. Holding the umbrella open until I sign off on the look on a real device. One tiny follow-up noted: the day-header focus line shows the long muscle name instead of the short one.

The build-log site now updates itself

I put the public build-log website online, but it was a frozen snapshot, the diary and the green commit-graph on it only showed data up to…

Shipped
the problem

I put the public build-log website online, but it was a frozen snapshot, the diary and the green commit-graph on it only showed data up to the day I built it. Every time I shipped something new, the site would quietly fall behind unless I copied files across by hand.

what I changed

Added a small robot (a GitHub Action) to this repo. Now every time I push my work, it counts up my commits for each day, grabs the latest diary, and sends both over to the website's own repo automatically. The website notices and rebuilds itself a minute later, so it always shows my newest days without me touching it. I also made the commit-graph stretch to the most recent day with activity, so brand-new days actually appear instead of stopping at an old date.

how I tested it

Merged it and watched the first run go green, then looked at the website's repo: the robot had pushed today's diary and a fresh commit count that now includes today (it didn't a minute before). The whole loop works start to finish.

Merged to main (513). The build-log site lives in its own repo and went live on Cloudflare earlier today; this is the piece that keeps it fresh.

Two fixes to the mid-workout flow

Two annoyances during a workout.

Done
the problem

Two annoyances during a workout. First, when you finished a set and the "How did that set feel?" popup came up, the "Log set" button was hidden below the fold, you had to swipe up every single time just to reach it. Second, when you finished an exercise, a "Set Complete" screen flashed up that still used the old plain-looking design, out of step with the rest of the app.

what I changed
  • The "How did that set feel?" popup now sizes itself to its contents, so the Log set button is always on screen, no more swiping up. It grows on its own if you open the "Add detail" section.
  • The end-of-exercise moment got a fresh look: a volt-lime "done" stamp that pops in, the exercise name, and a small "next up" line so it feels like you're moving forward instead of hitting a wall. It keeps the same brief timing as before (that pause quietly loads the AI's plan for your next exercise), adds a little success buzz, and respects the "reduce motion" setting.
how I tested it

Proved the popup-sizing trick in the isolated prototype harness first (the Log set button sits fully clear of the home bar), got the new "exercise complete" look signed off from a prototype render, then built the real app clean for both.

Both merged to main, popup fix (504), exercise-complete restyle (505). Visual/behaviour only; no workout logic touched.

Redesign playbook now includes a "what can we improve?" step

Our screen-redesign process only covered making a screen look right.

Done
the problem

Our screen-redesign process only covered making a screen look right. But a redesign is also the best moment to ask "what's missing here, or what could be better?" The Settings redesign proved that out, so I wrote the step down so we do it every time.

what I changed

Added a step to the redesign playbook: an optional panel of agents that reviews a screen from different angles, product, visual, an expert user, and a skeptic who pushes back on adding too much, covering what's missing, what to add, and how it looks and feels. The panel hands back a short list, the user picks, and the chosen ideas get prototyped and built like any other change.

how I tested it

Docs-only change to the redesign guide; merged via PR.

Merged to main (502). The how-to lives in docs/agents/screen-redesign.md (Phase 2.5).