An open-source barbell log you actually own. Reshape the 5×5 and Madcow engines — or write your own — keep every rep on your device, and export it anytime. Not at the mercy of Google, Apple, or someone else's product roadmap.

The classic beginner program. Squat every session, alternating Workout A/B, +2.5 kg every time you hit all your reps, and an automatic deload when you stall.
Where you go when linear stalls. Sets ramp to a top each day, a Friday PR set sets next week's weight, with heavy / light / intensity days and back-off volume.
For everything else. Set rows — weight × reps — with every set prefilled from last time. Timed holds and bodyweight sets, per-exercise rest. Nothing is prescribed; you drive.

Each set is a plate you cycle with a tap — full reps, missed reps, skipped. The bar’s working weight, warm-up ramp, and per-side plate math are already worked out. You confirm; the app tracks.

Madcow and heavy days climb to a top set, then a PR set and a back-off — prescribed, checked off one tap at a time, with the top set called out. The name isn’t decoration: ramping is how the engine progresses you.

Estimated 1RM, top set, volume and total reps per lift — with a gold star the moment you beat an all-time best. Tap any lift for the full picture; the history calendar shows every session at a glance.
Rampset deploys to Cloudflare’s free tier — Workers to serve the app, Cloudflare Access (also free) to put a login in front. No servers, no monthly bill for a household.
# get it running locally git clone https://github.com/you/rampset cd rampset && npm install cp .env.example .env.local # edit your lifters npm run dev # → localhost:3000 # ship it to Cloudflare Workers npm run deploy ✓ deployed to rampset.you.workers.dev # then add Cloudflare Access (free) in the # dashboard to gate it to your emails.

Add a profile for your partner, your kids, whoever trains with you — each with their own programs, history, and look (OLED black or clean light). Every profile is keyed to a Cloudflare Access email, so people land on their own automatically; on a shared home-screen install, switch between them with a tap.