Skip to main content

max / ripgrow

git clone https://makenot.work/git/max/ripgrow.git git clone git@ssh.makenot.work:max/ripgrow.git
Name Size
/ crates/
/ docs/
· .gitignore 50 B
· Cargo.lock 46.2 KB
· Cargo.toml 617 B
· LICENSE 1.0 KB
· README.md 1.1 KB

README

ripgrow

A ratatui TUI for programming and tracking resistance-training workouts. You build a library of exercise templates, log each session’s sets, and the app generates the next workout as a printable PDF using progression rules over your history and a self-reported readiness map.

Two intended users, one binary:

  • Solo lifter. One profile, one SQLite file, log-then-generate.
  • Personal trainer. Multiple profiles side by side, one per client. Delivery is a texted PDF; clients never touch ripgrow.

Crates

  • ripgrow-core — data model, schema migrations, progression state machine.
  • ripgrow-tui — ratatui frontend, ships the ripgrow binary.

Storage

One SQLite file per profile at ~/Library/Application Support/ripgrow/profiles/<name>.db. Design detail lives in the internal design notes.

Migrations

rusqlite bundled + PRAGMA user_version as the version tracker, matching the audiofiles pattern. Migration steps are embedded SQL in ripgrow-core.

Build

Target aarch64-apple-darwin only, built on mbp. No cross-compilation.

cargo build --release

License

MIT.