Reference
Glossary.
Every equation the app computes, every term it uses, every progression setting it offers. The formulas are the code, not approximations.
The math
Every equation.
These run the app. Each one is exactly as the code computes it.
01Estimated one-rep max, with RPE
weight × (1 + (reps + RIR) ÷ 30)
RIR = 10 − RPE. Reps in reserve: how many more you had in you. RPE 8 → about 2 left.
02Estimated one-rep max, no RPE logged
weight × (1 + reps ÷ 30)
The classic Epley equation. When no RPE is logged, RIR counts as 0 and the formula reduces to this.
03The RPE trigger
top set ≤ RPE 8 → earn it
Top-set RPE at or under the trigger earns progression. Above the trigger, or no RPE logged, the target holds.
04Double progression
below max → +1 rep · at max → +5 lb, back to min
Reps below your max → add one rep. At the top of your range → add the increment and reset to the range minimum.
05Load increments
round((w + v) × 2) ÷ 2
Pounds: weight + value. Percent: weight × (1 + value ÷ 100). Both round to the nearest half pound. Default increment: 5 lb.
06%1RM target
snap(basis × pct ÷ 100)
Basis = your training max, or your best same-rep-range estimated 1RM. pct defaults to 75%, clamped 1–100. The result is set at your range-minimum reps.
07Training max basis
entered TM wins; else best same-zone e1RM
A training max you type in beats everything. Without one, the app takes the best estimated 1RM from a top set logged in the same rep range.
08%1RM wave
pct = wave[(week − 1) mod length]
Weekly percentages cycle through your wave. Week 5 of a 4-week wave reuses week 1's percent. The wave only applies while its toggle is on.
09Plate snapping, %1RM mode only
round(x ÷ 5) × 5 / round(kg ÷ 2.5) × 2.5
%1RM loads snap to loadable plates: 5 lb imperial, 2.5 kg metric. Other modes keep the exact computed weight.
10Linear progression
+increment every session
No RPE gate. Reps carry over from the latest top set; only the load moves. Default: +5 lb a session.
11Time progression
latest + 5s, clamped to range
Timed work progresses in seconds. Default step is 5 seconds, clamped to the time range. Deloads never reduce timed work.
12Deload week
load × 60%, every 4 weeks
A scheduled lighter week: the normal prescription at the deload intensity. Defaults 60% every 4 weeks; intensity clamps to 40–80%. Timed work is never reduced.
13Week-range rebase
e1RM ÷ (1 + targetReps ÷ 30)
When you change an exercise's rep range, the app rebases the load with Epley in reverse: the weight your current estimated max predicts for the new range.
14Volume
weight × reps → add it up
Per set, summed. A set counts fully toward each primary muscle and 45% toward each secondary muscle in muscle-volume views.
15Dumbbell weight
log the total, both bells
Dumbbell exercises log the combined weight of both dumbbells. Volume is weight × reps on that stored total, so both bells are already counted and nothing is ever doubled.
16Similar exercises
3 × shared primary + shared secondary + 2 if same equipment
How the app scores "similar": shared primary muscles weigh triple, shared secondary muscles single, matching equipment adds two.
17Top set
heaviest weight wins; ties → more reps
The set the engine reads each session. Set tags are labels only and never influence the pick.
Terms
The jargon, translated.
Every term the app uses, in plain words.
1RM
One-rep max. The most weight you can lift once with good form. The app never asks you to test it; it estimates.
%1RM
A percent of your one-rep max. Used to prescribe loads. The app's default is 75%.
Estimated 1RM
What the math says you could lift once, from a logged set's weight, reps, and RPE.
Training max
The 1RM the %1RM math works from. Enter it by hand, or the app uses your best same-rep-range estimated 1RM.
RPE
Rate of perceived exertion, 1–10. How hard the set felt. 10 means nothing left.
RIR
Reps in reserve. 10 minus RPE. RPE 8 means about 2 reps left in you.
Top set
The heaviest set of the session; ties go to more reps. The set the progression engine reads.
Rep range
The min and max reps an exercise works inside, e.g. 6–12. Double progression climbs the range, then adds weight and restarts at the bottom.
Hypertrophy
Training for muscle growth. The app's default focus, roughly 6–12 reps.
Strength
Training for maximal force. Roughly 1–5 reps.
Endurance
Training to sustain effort. Roughly 12–20 reps.
AMRAP
As many reps as possible. One all-out set instead of a fixed rep target.
Double progression
Add reps first; at the top of the range, add weight and drop back to the bottom. The default progression mode.
Linear progression
Add the increment every session, no RPE gate. Reps carry over; only the load moves.
Undulating periodization
Varying the rep range (or %1RM) week to week instead of holding it flat. Off by default.
Deload
A planned lighter week. Load drops to a percent of normal (default 60%) every few weeks (default 4).
Wave
The weekly %1RM percentages across a program, e.g. 70, 75, 80.
Hold
What the engine says when the top set was too hard or had no RPE: the target stays put.
Increment
How much weight each progression jump adds. Default 5 lb, or a percent of the load.
Trigger
The RPE threshold that earns progression. Default 8: a top set at RPE 8 or under progresses.
PR
Personal record. The app tracks your best estimated 1RM and your heaviest set per exercise.
Volume
Weight × reps per set, added up. The headline measure of how much work you did.
Sets
Completed sets. A plain count.
Blind spots
Muscles with no work in the selected period. Named, not shamed.
Muscle map
The front-and-back body chart showing where an exercise's, or a whole program's, volume went.
Primary / secondary muscles
The main movers of an exercise, and the helpers. Secondary muscles get 45% of a set's volume in muscle-volume views.
Superset
Two exercises performed back to back, logged as a pair.
Focus
What an exercise or workout is for: strength, hypertrophy, endurance, or custom.
Program
A training block: a name, a length in weeks, workouts in order, and progression rules.
Saved workout
A reusable template. Start it any time; it opens pre-filled with exercises and targets.
Log
A finished workout, written to your history. Completed workouts become logs.
Suggestion card
A tappable card with the engine's computed target for an exercise. Nothing changes until you tap.
Time step
For timed work, how many seconds each progression adds. Default 5 s.
Timed work
Exercises tracked in seconds (planks, holds) instead of reps.
Dumbbell weight
The combined weight of both dumbbells, logged as one number. The column reads TOTAL for dumbbell exercises.
Set tags
Labels on a set: warmup, dropset, to failure, and more. Labels only; they never change the math.
Settings
Every progression setting.
Settings → Progression defaults. The defaults for new exercises and programs; each exercise can override them.
Progression mode
RPE-based. Or Linear: add the increment every session, no RPE needed. Or %1RM: loads from a percent of your training max.
RPE trigger
8. Pills: 7, 8, 9. Your top set at or under this earns progression.
Increment type & value
5 lb. Pounds or percent. Both round to the nearest half pound.
% of 1RM
75%. The default percent for %1RM mode.
Default focus
Hypertrophy · 6–12. Strength 1–5, Endurance 12–20, 15+, AMRAP.
Default rep range
Min 6, max 12. The rails double progression runs on.
Time step
5s. 5, 10, 15, or 30 seconds for timed work.
Vary rep ranges by week
Off. Optional undulating periodization for new programs.
Auto Deload
Off. A lighter week every 4 weeks at 60% intensity, for new programs.
Your data lives on your device; Settings → Data downloads a backup copy whenever you like.
Keep it free.
The app is free, forever. Contributions cover hosting and the upkeep that keeps it dependable.