Before deciding “website or app” you need to know what you're actually talking about. A website displays content: you read it. A web app lets you take actions: enter data, calculate, save, work. A PWA (Progressive Web App) is a web app that installs like a native app and works offline too, without going through any store. The practical rule: if the user needs to do something repetitive, you need a web app, not a website.
Why I chose a PWA for SammaGym
Every training app I'd tried had the same flaw: either empty logs where you had to type everything by hand, or pre-built programmes that never adapted. I wanted the opposite — an app that builds the programme itself and at the gym just lets me count my sets. And since this is a daily-use tool, with hands full and poor signal, a PWA was the right call: no store needed, opens like an app, runs offline.
The real value: a programme that builds itself
I knew the problem exactly: an intermediate lifter, aiming for hypertrophy and body recomposition, wanting to train properly without spending evenings planning mesocycles. No product on the market combined “serious, research-backed programming” with “usable one-handed, in low light, between sets”. That gap is SammaGym.
The science behind the programme
The engine is built on the volume landmarks from Renaissance Periodization (the work of Mike Israetel, PhD in Sport Physiology): MEV, the minimum volume that produces muscle growth; MAV, the range where you grow fastest; MRV, the ceiling beyond which you no longer recover. The programme starts there and adds sets week by week within that window, instead of handing you a one-size-fits-all fixed number.
Loads that adjust themselves
The second pillar is autoregulation. Double progression (reps go up first, then load) and RIR— the reps you keep “in reserve” — as a fatigue compass. When a session goes well, the app pushes; when fatigue accumulates, it backs off. The deload doesn't fire on a schedule — it fires when objective signals say it's genuinely needed.
Offline-first: why it runs without a connection
Signal at the gym is terrible and your hands are full. That's why SammaGym is an installable PWA that works offline: data lives on device first, in IndexedDB, and syncs when a connection is available. I pull it out between sets, log my reps, and never lose my place — even in the locker room with no signal.
There's the full SammaGym project with the demo, or see the other work in the Lab.
See the SammaGym project


