Web Editor

This tool allows you to quickly build your weightlifting programs, ensure you have proper weekly volume per muscle group, and balance it with the time you spend in a gym. You can build multi-week programs, plan your mesocycles, deload weeks, testing 1RM weeks, and see the weekly undulation of volume and intensity of each exercise on a graph.

Set the program name, create weeks and days, type the list of exercises for each day, putting each exercise on a new line, along with the number of sets and reps after slash (

/
) character, like this:

Squat / 3x3-5 Romanian Deadlift / 3x8

Autocomplete will help you with the exercise names. You can also create custom exercises if they're missing in the library.

On the right you'll see Weekly Stats, where you can see the number of sets per week per muscle group, whether you're in the recommended range (indicated by color), strength/hypertrophy split, and if you hover a mouse over the numbers - you'll see what exercises contribute to that number, and how much.

The exercise syntax supports RPEs , percentage of 1RM, rest timers, various progressive overload types, etc. Read more about the features in the docs!

When you're done, you can convert this program to Liftosaur program, and run what you planned in the gym, using the Liftosaur app!

To use this program:
  • Install Liftosaur app
  • Copy the link to this program by clicking on below
  • Import the link in the app, on the Choose Program screen.
Download on the App Store
Get it on Google Play

00:39
set_rep / used: none / progress: custom(minset: 3, maxset: 5, repincrease: 1) {~
if (completedReps >= reps) {
if (completedNumberOfSets >= state.maxset) {
numberOfSets = state.minset
reps += state.repincrease
} else {
numberOfSets += 1
}
}
~}

set_rep_weight / used: none / progress: custom(minset: 3, maxset: 4, repincrease: 2, minrep: 8, maxrep: 10, weightincrease: 0.1) {~
if (weights[ns] == 0) {
weights = completedWeights[ns]
}
if (completedReps >= reps) {
if (completedNumberOfSets >= state.maxset) {
numberOfSets = state.minset
if (reps[ns] >= state.maxrep) {
weights = weights[ns] + weights[ns] * state.weightincrease
reps = state.minrep
} else {
reps += state.repincrease
}
} else {
numberOfSets += 1
}
}
~}

weighted / used: none / 3x8 / progress: custom() { ...set_rep_weight }
bodyweight / used: none / 3x8 0lb / progress: custom() { ...set_rep }

Bench Press, Dumbbell / ...weighted
Bent Over Row / ...weighted
Shoulder Press, Leverage Machine / ...weighted

00:39
Squat / ...weighted
Glute Bridge, Barbell / ...weighted
Bulgarian Split Squat, Dumbbell / ...weighted
Standing Calf Raise, Barbell / ...weighted

00:39
Shoulder Press / ...weighted
Pull Up / ...bodyweight
Incline Bench Press, Dumbbell / ...weighted
Seated Row, Cable / ...weighted

00:39
Romanian Deadlift, Barbell / ...weighted
Leg Press / ...weighted
Seated Leg Curl, Leverage Machine / ...weighted
Seated Calf Raise, Barbell / ...weighted

00:58
Preacher Curl / ...weighted
Skullcrusher / ...weighted
Lateral Raise / ...weighted
Shrug / ...weighted
Chest Fly, Dumbbell / ...weighted
Standing Row Rear Delt With Rope, Cable / ...weighted

Week Stats

Total Sets: 66
Strength Sets: 0, 0%
Hypertrophy Sets: 66, 100%
Upper Sets: 42 (42h), 3d
Lower Sets: 24 (24h), 2d
Core Sets: 0
Push Sets: 21 (21h), 3d
Pull Sets: 21 (21h), 3d
Legs Sets: 24 (24h), 2d
Shoulders: 23↓ (23h), 3d
Triceps: 9↑ (9h), 3d
Back: 21↓ (21h), 5d
Abs: 5↑ (5h), 3d
Glutes: 15↓ (15h), 2d
Hamstrings: 12 (12h), 2d
Quadriceps: 12 (12h), 2d
Chest: 17↓ (17h), 3d
Biceps: 12 (12h), 3d
Calves: 14↓ (14h), 2d
Forearms: 9↑ (9h), 3d