Skip to main content

max / ripgrow

1.1 KB · 41 lines History Blame Raw
1 # ripgrow
2
3 A ratatui TUI for programming and tracking resistance-training workouts. You
4 build a library of exercise templates, log each session's sets, and the app
5 generates the next workout as a printable PDF using progression rules over your
6 history and a self-reported readiness map.
7
8 Two intended users, one binary:
9
10 - Solo lifter. One profile, one SQLite file, log-then-generate.
11 - Personal trainer. Multiple profiles side by side, one per client. Delivery
12 is a texted PDF; clients never touch ripgrow.
13
14 ## Crates
15
16 - `ripgrow-core` — data model, schema migrations, progression state machine.
17 - `ripgrow-tui` — ratatui frontend, ships the `ripgrow` binary.
18
19 ## Storage
20
21 One SQLite file per profile at
22 `~/Library/Application Support/ripgrow/profiles/<name>.db`. Design detail
23 lives in the internal design notes.
24
25 ## Migrations
26
27 `rusqlite` bundled + `PRAGMA user_version` as the version tracker, matching
28 the audiofiles pattern. Migration steps are embedded SQL in `ripgrow-core`.
29
30 ## Build
31
32 Target `aarch64-apple-darwin` only, built on mbp. No cross-compilation.
33
34 ```
35 cargo build --release
36 ```
37
38 ## License
39
40 MIT.
41