Files

34 lines
1.7 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.
# Exercise Library
Reference material for exercises the app knows about — one folder per exercise,
named exactly as the exercise appears in the app.
Each entry contains:
- `info.md` — the details, always in this order: a one-line summary, quick facts
(**Category**, **Type**, **Targets**, **Prescription**), then **Setup**,
**Execution**, **Cues**, **Common Mistakes**, and **Progression**
(easier → harder — get strong by making the move harder, not by endless reps).
- `motion.json` — the exercise scripted as key frames of joint angles on the
shared rig (proportions in the library-level `body.json`), with IK pins for
planted hands/feet and tween timings. This is the **canonical source** for
all visuals and for the in-app animation planned for the lower half of the
exercise screen.
- Generated from it by `render.py` (never hand-edited):
`frames/frame-N.svg` (one per key frame), `preview.gif` (the tweened loop),
and `visual.svg` (the primary frame, for static contexts).
Which exercises the library must contain — the movement-pattern × modality
matrix, the gym-floor census, and the considered exclusions — is defined in
`COVERAGE.md`; judge additions and removals against it.
The rig and the visual language — right limbs dark / left limbs light with an
embedded R/L legend, nose tick for facing, teal on the working parts, timing
that encodes tempo, plus figure profiles, flipping, and theming — are defined
in `SYSTEM.md`, along with the `motion.json` schema and rendering
instructions.
The library lives at the repo root, deliberately outside the app targets'
source folders, and is not bundled into the app yet — the in-app presentation
format is still being worked out.