managarten/apps
Till JS b2f3b313bb feat(mana/web/body): exercise picker, routines, phases, progression chart
Five quick-win UI upgrades that take the body module from "skeleton
ListView" to "actually usable for daily training":

1. ExercisePicker modal (replaces the previous bare <select> in
   WorkoutLogger). Search by name, filter chips per muscle group,
   inline create-new-exercise. The big win is the per-row "Last:
   80kg × 8 · vor 3 Tagen" hint — progressive overload becomes
   "look at the number, add 2.5kg" instead of digging through
   workout history. Recently-trained exercises bubble to the top
   so the picker matches what you actually do most days.

2. RoutineManager. Three seed routines added to BODY_GUEST_SEED
   (Full Body Starter, Upper Day, Lower Day) so a fresh user has
   a one-tap "start" path. Inline form to save custom routines as
   chips of selected exercises. Archive button per routine; edit
   is deferred. Routines start a workout via the existing
   bodyStore.startWorkout({ routineId, title }) shape.

3. PhaseManager replaces the previously read-only header pill with
   a clickable control. Three states: idle (start button), opening
   (kind picker + start/target weight inputs), active (color-coded
   summary card with end button). The auto-close-on-switch logic
   was already in bodyStore.startPhase, so this is pure UI plumbing.

4. ExerciseProgressionChart. Same auto-scaled SVG approach as
   WeightChart but plots best estimated 1RM (Epley) per day for
   one exercise. Falls back to the most-recently-trained exercise
   when no explicit id is pinned, so the chart is never empty on
   first open.

5. New query helpers feeding the above: getLastSetByExercise,
   getE1rmTimeline (collapses multiple working sets in one session
   to the daily best so the chart isn't noisy), and a coarse
   relativeDays formatter for the picker's "vor 3 Tagen" hints.

ListView re-composed: removed the dead phase-pill CSS, added
PhaseManager + RoutineManager + ExerciseProgressionChart sections,
left WorkoutLogger / WeightChart / DailyCheckCard / RecentWorkouts
in place. i18n keys for the new copy added to body/de.json and
body/en.json (it/fr/es fall back to the components' inline default
strings until translated).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 16:55:51 +02:00
..
api feat(news): backend ingester service + curated feed API 2026-04-09 15:53:26 +02:00
calc/packages/shared chore: delete 25 web-archived directories, remove stale stubs, clean workspace config 2026-04-03 13:03:49 +02:00
calendar refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
cards chore: complete ManaCore → Mana rename (docs, go modules, plists, images) 2026-04-07 12:26:10 +02:00
chat refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
citycorners chore: complete ManaCore → Mana rename (docs, go modules, plists, images) 2026-04-07 12:26:10 +02:00
contacts refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
context chore(workspace): remove redundant nested lockfiles + workspace.yaml 2026-04-09 11:57:11 +02:00
docs docs: Phase 9 documentation roundup — close encryption-shaped doc gaps 2026-04-08 11:47:59 +02:00
guides refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
inventory refactor(mana): rename inventar → inventory across the codebase 2026-04-09 15:50:24 +02:00
mana feat(mana/web/body): exercise picker, routines, phases, progression chart 2026-04-09 16:55:51 +02:00
manavoxel chore(workspace): unify vitest to ^4.1.2 across all packages 2026-04-07 13:58:29 +02:00
memoro chore: remove abandoned per-product workspace artifacts 2026-04-09 11:56:51 +02:00
moodlit refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
mukke feat: rename ManaCore to Mana across entire codebase 2026-04-05 20:00:13 +02:00
news refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
nutriphi refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
photos chore: complete ManaCore → Mana rename (docs, go modules, plists, images) 2026-04-07 12:26:10 +02:00
picture refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
planta chore(planta): remove orphan apps/planta/packages/shared 2026-04-09 14:06:11 +02:00
presi refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
questions refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
skilltree chore: delete 25 web-archived directories, remove stale stubs, clean workspace config 2026-04-03 13:03:49 +02:00
storage refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
times chore: complete ManaCore → Mana rename (docs, go modules, plists, images) 2026-04-07 12:26:10 +02:00
todo refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
traces refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
uload refactor(shared-tailwind): rewrite themes.css to single-layer shadcn convention 2026-04-09 01:13:06 +02:00
zitare/packages/content chore: delete 25 web-archived directories, remove stale stubs, clean workspace config 2026-04-03 13:03:49 +02:00