Files
ZenXercise/docs/adr/0002-library-ui-and-player.md
CedricandClaude Opus 5.5 1deb2a43d0 App icon and a lavender Stretching palette
A lotus inside a dry-brush ensō, with a small plate in the gap and a small
barbell as the lifting hint. Drawn by tools/icon/make_icon.py and wired up
with flutter_launcher_icons; the launch screen uses the icon's lavender.
Stretching Mode moves from sage/teal to the icon's lavender and violet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 01:14:37 +01:00

23 lines
1.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ADR 0002 — Exercise library, mode design, Player cues
Status: Accepted (2026-10-28)
## Decisions
1. **Library source**: free-exercise-db (Unlicense, 876 exercises). `stretching` → Stretching mode,
everything else → Workout mode. No user-created exercises.
2. **Images**: Bundle both images per exercise, compressed to WebP (~400px, est. 15–20 MB).
The start/end "flip" is the v1 animation; real animations are a future step.
3. **Language**: English only; UI strings centralised for later translation.
4. **Plan Steps**: Workout = sets, reps-or-duration, optional weight; no rest countdown.
Stretching = hold, both-sides flag, rounds. Workout Steps can be grouped into Supersets.
5. **Library browsing**: search + muscle/equipment/level filters, reused as the Plan exercise picker.
6. **Structure & design**: Mode switch at top; per-mode tabs Plans · Library · History.
Stretching = calm/light (lavender/violet since ADR 0007, first sage/teal; rounded, slow). Workout = dark/energetic (orange/red, bold, snappy).
Last-used mode is remembered.
7. **Player cues**: Visual cues (countdown ring, accent pulse, next cards, auto-advance, screen kept on)
plus a gentle, non-annoying sound. No vibration.
8. **History**: Separate per Mode. The Streak is one shared, Duolingo-style daily Streak across both Modes;
only complete Sessions count.
9. **Units**: kg only.