2026-10-28 22:55:34 +01:00
|
|
|
|
# ADR 0004 — Player flow, Streak and app identity
|
|
|
|
|
|
|
|
|
|
|
|
Status: Accepted (2026-10-28)
|
|
|
|
|
|
|
|
|
|
|
|
1. **Sound**: One soft chime per Mode, only on timer end / next item. Mixes with other audio. Mute toggle.
|
|
|
|
|
|
2. **Workout rest**: No countdown and no rest settings. A count-up Rest Screen with "Start next set".
|
|
|
|
|
|
3. **Stretching flow**: Automatic, with Transitions (per-Plan length, default 5 s).
|
|
|
|
|
|
4. **Supersets**: Workout only; one set count; round-robin; optional rest between Exercises in a round.
|
|
|
|
|
|
5. **Streak**: One daily Streak across both Modes, kept subtle; any complete Session counts, no minimum.
|
|
|
|
|
|
Local notifications are in scope for v1 (to help keep the Streak).
|
|
|
|
|
|
6. **Theme**: Fixed look per Mode, no light/dark setting for now.
|
|
|
|
|
|
7. **Fonts**: Nunito (Stretching), Barlow Condensed (Workout).
|
|
|
|
|
|
8. **App ID**: `de.zendric.zenxercise`.
|
2026-10-28 23:00:49 +01:00
|
|
|
|
|
|
|
|
|
|
## Addendum (round 5)
|
|
|
|
|
|
|
|
|
|
|
|
9. **Superset rest**: per-Superset switch "Rest between exercises", off by default.
|
|
|
|
|
|
10. **Streak UI**: small flame + count in the top bar, "+1 🔥" on the Session summary, tap for a panel with
|
|
|
|
|
|
current/longest Streak and a month calendar. No full-screen celebrations or milestones in v1.
|
|
|
|
|
|
11. **Streak Freezes** are in v1. **Grace Hour** 00:00–01:00 counts for the previous day unless that
|
|
|
|
|
|
day is already done.
|
|
|
|
|
|
12. **Reminders**: two adjustable daily Reminders (19:00 and late night), skipped when the day is done.
|
|
|
|
|
|
A Settings screen hosts them.
|
|
|
|
|
|
13. **Session summary**: duration, Exercises, Set Logs and the Streak line.
|
|
|
|
|
|
14. **No UI prototype**: the Streak is built directly in the app.
|
|
|
|
|
|
15. **Build order**: setup/data/designs → Library → Plan editor → Player + summary → History, Streak,
|
|
|
|
|
|
Reminders. Commit and push after each stage; check in after stages 1 and 4.
|
2026-10-28 23:03:28 +01:00
|
|
|
|
16. **Freeze rules**: earn 1 per 7 consecutive Streak Days, hold max 2, auto-used on a missed day (❄️);
|
|
|
|
|
|
more missed days than Freezes resets the Streak.
|
|
|
|
|
|
17. **Reminder defaults**: 19:00 and 22:30, each toggleable and re-timeable; exactly two slots.
|