Opinionated where the evidence is. Honest where it isn’t.
Every rule in Emberlift traces back to a written review of the literature, with its evidence graded. Where the research is thin, the app says so rather than inventing a number — and where gym lore is wrong, it declines to encode it.
Question → review → grade → code → test.
Nothing in the programme comes from a template we liked. Each rule began as a question a lifter asked, and went through the same four steps before it reached the app.
Twelve questions, answered in writing before they were answered in code.
Each review lives in the repository next to the code that implements it, so anyone reading the app can read the reasoning.
Training volume
Weekly set ranges per muscle, by level and goal — where growth starts, where it plateaus, and where more begins to cost you.
Muscle recovery kinetics
How long each muscle needs after hard work, why large groups take longer, and how soreness and session load move the clock.
The progression engine
What a responsive engine must read — first-set performance, reps in reserve, stalls — and the four “obvious” rules it replaced.
Strength programming
The percentage wave for the big lifts: how the training max is set, re-tested and pulled back, and what an app must store to run it honestly.
Weightlifting
What an app can responsibly programme for the snatch and clean & jerk without coaching the lifts — and where it must hand off to a coach.
Age scaling
What calendar age changes and what it doesn’t: dose, recovery time, the size of each load increase, how often to deload — never the ambition.
Aesthetic programming
A goal for the shape, not the mass: which muscles build a V-taper, an athletic or a lower-body look, and how to prioritise them without imbalance.
Warm-ups and stretching
What before a working set measurably helps — ramp sets, a short general raise, nothing held — and why nearly everything prescribed after one does nothing for recovery.
Exercise quality tiers
Which exercise is best for which muscle — so “ease off chest” can name the exercise to drop, and “add back” can name the one to add.
Exercise tiering by level
The lowest experience level at which each exercise is sensible to programme for a self-coached lifter learning from a phone.
Exercise substitution
What a coach reaches for when the rack is taken or a joint complains — the accepted next-best for each lift, and what breaks ties.
Library gaps
Which missing exercises are distinct lifts a coach programmes by name, which are variants not worth an entry — and what to refuse.
The rules behind the rules.
Some decisions aren’t about evidence; they’re about what kind of coach the app should be. These are fixed.
- No account, no server. Your workouts, body weight and food diary live on your phone. We can’t see them, because they never reach us.
- It teaches as it coaches. Why this exercise, why this rest, why not more sets — in sentences, not badges.
- It never takes heavy work away. Older, returning, or new — the plan adjusts the dose and the pace, not the ambition.
- It won’t program around a medical condition. The screen at the start asks; if the answer needs a doctor, the app says so and waits.
- Your programme is yours to edit. Every generated plan is a starting point. Swap, move, reorder, rewrite — the coaching follows.
- No streaks, no engagement machinery. A medal marks a record, not a login. A quiet week is called a quiet week.
Where the app hedges, on purpose.
Recovery times are population estimates; yours will differ, which is why soreness and your own sets feed the clock. Volume ceilings are better evidenced for some muscles than others. Age adjustments compound several effects whose sizes are uncertain. The percentage wave is a convention with a long record, not a controlled trial. Post-session stretching does nothing measurable for soreness or recovery — the wind-down is offered for range of motion over weeks, and is labelled that way.
When the app is unsure, it says “about”, it offers a range, or it asks you. We’d rather be corrected by your training than confidently wrong.
See the reasoning in the app itself.
Every session, every rest day, every load has a line explaining it. Try it on iPhone or Android.