Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.ironcoaching.app/docs/llms.txt

Use this file to discover all available pages before exploring further.

Building a Program

The program builder is a spreadsheet-like editor for creating structured training programs.
Program Builder with exercises and sets

Creating a New Program

  1. Go to Dashboard > Programs
  2. Click New Program
  3. Enter a name and description

Program Structure

Programs are organized into weeks, with training days nested inside each week:
Program
├── Week 1: Base Building
│   ├── Day 1: Upper Body
│   │   ├── Block A (Superset)
│   │   │   ├── A1: Bench Press — 4×8 @ RPE 7
│   │   │   └── A2: Barbell Row — 4×8 @ RPE 7
│   │   ├── Block B (Straight)
│   │   │   └── Overhead Press — 3×10 @ RPE 7
│   │   └── ...
│   ├── Day 2: Lower Body
│   │   ├── Block A (Straight)
│   │   │   └── Squat — 5×5 @ RPE 8 [STR]
│   │   └── ...
│   └── Day 3: ...
├── Week 2: ...
└── Week 3: ...
Existing programs are automatically migrated into “Week 1” — no action needed. Everything carries over exactly as it was.

Managing Weeks

Programs are organized into weeks. You can:
  • Add a week — click Add Week at the bottom of the program
  • Duplicate a week — copies all days and exercises in that week
  • Remove a week — deletes the week and all its days (with confirmation)
  • Reorder weeks — see Reordering below
Program builder showing week sections with collapsible headers

Collapsing Weeks

Click the chevron icon on any week header to collapse or expand it. Programs with 4 or more weeks default to collapsed so the builder stays manageable.

Week Metadata

Each week has two optional fields you can set from the week header:
  • Deload toggle — marks the week as a deload week (shown as a yellow “DELOAD” badge). Visible to athletes in the app and in exports.
  • Week notes — a free-text field for focus areas, intensity guidance, or coaching cues (e.g., “Build to a top single”, “Volume accumulation — keep RPE conservative”).

Day Numbering

Day numbers reset within each week (Day 1, Day 2, Day 3 per week), so athletes always know which day of that week they’re on — regardless of total program length.

Reordering: weeks, days, blocks, exercises

The builder uses grip handles (the ⋮⋮ icon) for every drag-to-reorder gesture. Each grip moves a different unit, so dragging is always predictable — you’ll never accidentally merge or delete something while reordering.
GripWhat it movesWhere it is
Week gripThe whole week (and all its days)Next to the week title
Day gripA training day (and all its blocks/exercises)Next to the D1 / D2 label inside each day card
Block gripA multi-exercise block / superset (and all its exercises)Next to the block label A / B / C on multi-exercise blocks
Exercise gripA single exercise within its block, or — when the exercise is alone in its block — the whole single-exercise blockAt the very left of every exercise row

Days between weeks

Drag a day’s grip handle from one week into another to move the entire day across. Day numbers re-sequence automatically in both weeks.

Empty weeks

A newly-created week starts with a single empty Day 1. If you drag the only day out, the empty week shows a dashed drop zone reading “Drop a day here, or click + Add Training Day below” — drag any day from another week onto it, or click Add Training Day to create a fresh one.

Single-exercise vs multi-exercise drag

When every block has a single exercise — the most common shape for non-superset programs — dragging an exercise grip moves the whole block. So if your day reads Bear Crawl / Bench Dips / Cable Front Raise (each in its own block), dragging Cable’s grip to the top reorders to Cable / Bear Crawl / Bench Dips. No supersets are created. When a block has 2+ exercises (a superset, triset, etc.), the exercise grip is constrained to within that block. Use the block grip on the block label to move the whole superset around. To pull an exercise out of a superset, delete it from the block and add it elsewhere.
If you want to merge two single exercises into a superset, don’t drag — use + Superset with… under the exercise (see Exercise Blocks). Drag is always for moving things, never for grouping them.

Adding Training Days

Click Add Day to create a new training day. Each day has:
  • Name — e.g., “Upper Body A”, “Pull Day”, “Competition Squat”
  • Day Number — ordering within the program

Adding Exercises

For each exercise, you can set:
FieldDescriptionExample
NameExercise nameBarbell Bench Press
SetsNumber of sets4
RepsTarget reps (or range)8 or “6-8”
RPERate of perceived exertion (single, range, or per-set)@8 or @7.5-8
RIRReps in reserve (single, range, or per-set)3 or 1-2 or 0, 1, 2
RestRest period in seconds180
Back-off %Percentage drop from top set10
NotesCoaching notes”Pause at bottom”
Reps can be a range like “8-12” — this gives athletes flexibility while maintaining the intent.

Intensity (RPE or RIR — auto-detected)

The intensity column accepts both RPE and RIR — type either format on any row and it routes to the right field automatically:
  • @8, @7.5-8, @9 — stored as RPE
  • 2 RIR, 1-2 RIR, 0, 1, 2 RIR — stored as RIR
  • Bare numbers ≤ 4 are interpreted as RIR; everything else as RPE
You can mix units within the same program — coaches commonly prescribe RPE for the main lifts and RIR for accessories on the same day. There’s no per-program toggle — the parser handles both cases.

RPE and RIR Ranges

RPE and RIR fields accept more than a single value:
FormatExampleUse Case
Single value@8 / 3 RIRFixed intensity target
Range@7.5-8 / 1-2 RIRIntensity window across sets
Per-set values7, 8, 9 RPE / 0, 1, 2 RIRProgressively harder sets
Per-set RIR values like “2, 1, 0” work well for straight sets where you push closer to failure each set. Ranges like “@7-8” are better for giving athletes a target zone when loads vary.

Exercise Metric Presets

Not every exercise uses sets × reps × weight. Select a metric preset to change the columns for each exercise:
PresetLabelColumns
StrengthSTRSets, Reps, Weight, RIR/RPE
TimedTMDSets, Duration, Weight, RIR/RPE
DistanceDSTSets, Distance, Weight, RIR/RPE
CardioCRDDuration, Distance, —, RPE
Timed HoldHLDSets, Duration, —, RPE
AMRAPAMRAPSets, Time Cap, —, RPE
EMOMEMOMRounds, Reps, Weight, Interval
The default is Strength (STR). Change the preset by clicking the metric badge on any exercise row.
Use CRD for conditioning work like rowing or cycling, HLD for planks and carries, and EMOM for interval training.

Exercise Blocks (Supersets, Circuits)

Group exercises into blocks to create supersets, trisets, giant sets, or circuits.

Converting a single exercise into a superset

The fastest way to make a superset is to start from a single-exercise block and add a second exercise to it:
  1. Find the exercise you want to pair
  2. Click + Superset with… below the exercise row
  3. Pick the second exercise from the picker that opens
The block automatically gains the superset chrome — block label A / B, type selector (“Straight Sets” by default — change to Superset, Tri-set, etc.), and rest fields. Add more exercises with + Add exercise to A.

Creating a Block

  1. Click Add Exercise at the bottom of any training day to create a new single-exercise block
  2. Or use + Superset with… above to convert an existing exercise into a multi-exercise block
  3. Select the block type:
TypeDescription
Straight SetsDefault — exercises performed individually
Superset2 exercises alternated with no rest between
Tri-set3 exercises performed back-to-back
Giant Set4+ exercises performed back-to-back
CircuitMultiple exercises cycled through for rounds
  1. Add exercises within the block — they’re automatically labeled A, B, C, etc.

Block Rest Settings

Each block has two rest options:
  • Rest Between — seconds of rest between exercises within the block (e.g., 0 for true supersets)
  • Rest After — seconds of rest after completing all exercises in the block before moving on
For antagonist supersets (e.g., bench press + barbell row), set Rest Between to 0 and Rest After to 90–120 seconds.

Video Demonstrations

Add a YouTube or video URL to any exercise for athlete reference.
  1. Click on an exercise row to expand it
  2. Toggle Video URL on
  3. Paste the YouTube link (e.g., https://youtube.com/watch?v=...)
Athletes see a play button next to the exercise name in their IronLedger app, linking directly to the video.

Program Metadata

Optionally set program-level information:
  • Goal — e.g., “Hypertrophy”, “Strength”, “Peaking”
  • Phase — e.g., “Accumulation”, “Intensification”
  • Block Length — e.g., “4 weeks”
  • Nutrition — any dietary notes

Templates

Toggle Is Template to save a program as a reusable template. Templates can be duplicated and customized for individual athletes.

Tags

Add tags to organize programs (e.g., “beginner”, “powerlifting”, “12-week”).

Grid view (snapshot)

Click the Grid button at the top of the weeks section to switch from the default List editor into a read-only week × day matrix. Each cell shows the day name, exercise count, and the first three exercise names. Useful for scanning a long block at a glance — switch back to List to keep editing.

Folders

Group programs in your library into folders for easier scanning across blocks, athletes, or specialties.
  1. Go to Dashboard > Programs
  2. Click New Folder in the top right and name it (e.g. “Powerlifting templates”, “Block 1 — Hypertrophy”)
  3. On any program card, open the menu and pick a folder under Move to folder
Programs without a folder show under an Unfiled section. Deleting a folder is non-destructive — programs inside flow back to Unfiled.