Home that knows you.
v1.6.2 closed the auto-progression loop. This release picks up where that left off and rewires Home, Programs, and the new-user welcome so the app reflects what you've actually been doing.
Two big threads landed: a redesigned Home screen that gives the active workout, recent PRs, and weekly progress more weight than dashboard noise, and a rebuilt Programs tab with filters that actually help find what you trained recently. Plus a fresh empty-state for first-time users and a handful of smaller respect-the-user fixes.
Home, rebuilt
The old Home stacked ten cards top to bottom — recommended workout, strength split companion, top performance, calibration nudge, streak card, weekly goal card, unfinished session banner, last workout. Each was its own full-width rectangle. Glancing at it produced "lots of stuff" rather than "what should I do now?".
The new Home is a tighter stack:
- Greeting + avatar (tap the avatar to open Account)
- Unfinished session banner — only when paused, now at the very top so a half-done workout is impossible to miss
- 3-cell stats strip — Streak, Levels Cleared, Active Programs as compact pills
- Primary "Next workout" CTA — one big card with a gradient Start button, a phase-aware icon, and a position indicator ("Day 3 of 5") when you're in the strength split
- "See all programs" subtle link
- Weekly goal strip — progress capsules showing where you are on this week's target
- "More" list — up to three thin rows for the calibration nudge, the most recent PR, and a "Repeat last workout" shortcut
The Next workout CTA is smart: if you're active in the strength split it shows today's split day. Otherwise it falls back to your current skill progression. For a brand new user the whole screen is replaced by a soft welcome (more on that below).
Programs tab, rebuilt
A row of filter chips replaces the scrollable wall of every program: Recent, Mine, Split, Skill, Foundation, Test, All.
- Recent is the default for returning users — shows programs you've actually completed, newest first. Brand new users see All as the leading chip instead.
- Mine surfaces your custom-created programs when you have any.
- Split / Skill / Foundation / Test filter by category.
- All keeps the category-grouped view if you want the full catalog.
Each program card got cleaner too: tinted icon block on the left, generic thumbnail images dropped, and single-level programs (strength split days, calibration tests) no longer show "Level 0 / 1" and an empty progress bar — they're either done or not, the row stays calm.
Custom programs respect your intent
Auto-progression now skips programs you've created yourself. If you author a custom program with 3×10 reps, next session is 3×10 — not 3×11, not 3×10 at +2.5 kg. The thinking: you typed those numbers deliberately, the app shouldn't quietly override your choice. Catalog programs (Front Lever, Upper Body Strength, etc.) keep auto-progressing as before.
Same applies to weight pre-fill: catalog weighted exercises bump kg automatically when you clear all working sets; custom weighted exercises hold whatever weight you logged last.
Empty state for new users
After signing up for the first time, Home is now a soft welcome:
Welcome, Jacob
Pick a program to start with. We'll adapt the rest based on how you train.
Below it, three starter program rows matching what the onboarding flow recommends:
- Strength Calibration — sets your baseline so auto-progression has something to anchor on
- Upper Body Strength — entry into the strength split rotation
- A beginner-level skill program — long-term progression hook
No "0/0/0" stats, no broken-feeling progress bars. The screen tells the user what to do first, then disappears the moment they complete their first workout.
Smaller fixes
- Continue your workout banner no longer shows when you opened a program but never logged a set. Nothing to continue.
- Onboarding flag lives in Keychain so it survives reinstall. It now gets wiped on logout and account deletion, so a delete-account → delete-app → reinstall → login flow correctly takes the user through onboarding again instead of skipping it.
- Foundation programs (Upper Body, Lower Body, Core, Full Body) stay in the catalog for existing users but aren't recommended to new users anymore — onboarding and the Home empty state both point at the strength split + a skill instead.
- Avatar badge in the Home header now opens the Account tab. The bottom Programs tab is also reachable programmatically — "See all programs →" on Home swaps to it.
- Decode errors on programs with
media: nullare gone — the iOS Exercise model now treats media as optional.
The thread tying this release together: the app is paying attention to you instead of showing the same dashboard to everyone. Home reflects what you trained recently, Programs remembers what you came back to, and the prescription respects the difference between "ZenMotion authored this" and "you authored this".
Email me if anything feels off — support@zenmotion.app. Every message still reaches the person who wrote the code.
— Jacob