{{ editingId ? 'Edit Workout' : 'Create Workout' }}

Back to Calendar
Loading...

Loading workout…

{{ error }}
{{ editingId ? 'Workout updated!' : (sentSummary || 'Workout saved!') }}
Saved to your library — it's now in the sidebar and can be dragged onto any calendar.

Workout Details

No athletes on your roster

Add an athlete from the Athletes page before building a workout.

{{ athleteError }}

{{ dateError }}

{{ prettyDate(d) }}

{{ titleError }}

{{ plannedDurationError }}

{{ plannedDistanceKmError }}

{{ plannedTssError }}

{{ estimatedTss }}

Workout Structure

Drag blocks here, or click one above

  1. {{ block.repeat }}×
  2. Drop here to add at the end

Edit a step by typing over it, e.g. 4m hard @ RPE 8-9. Drag the grip to reorder.

What can I type?

90s · 4m · 4' · 1h30 · 10:00 durations

800m · 2km · 1mi · 50 meters distances

@ Z3 · @ zone 2 · @ Z1-2 zones

@ RPE 8-9 effort

@ 95-105% FTP · % LTHR · % pace targets

5x (4m hard, 2m easy) repeats

10m cool down lap ends on the lap button

20m @ Z2 // stay relaxed a note

Preview

{{ shortDuration(totals.duration) }} · ~{{ totals.tss }} TSS · IF {{ totals.if.toFixed(2) }}

  1. {{ block.repeat }}× {{ shortDuration(block.total) }}

    {{ step.name }} · {{ step.target }} {{ step.duration || step.distance }}

Exercises

{{ strengthPreview.sets }} sets · {{ strengthPreview.exercises }} exercises · {{ strengthTime }}

Build the session from the exercise bank

Tap an exercise to add it. Drag one onto another to make a superset.

  1. {{ block.letter }} {{ block.rounds }} {{ block.rounds === 1 ? 'round' : 'rounds' }}
    • {{ row.label }} {{ row.label }} {{ row.title }}

      Sets differ; the steppers set them all alike.

      {{ row.sets }} {{ row.sets === 1 ? 'set' : 'sets' }}
      {{ row.amount }} {{ row.amountUnit }}
  2. or drop one here

{{ bankTarget >= 0 ? 'Add to ' + editorBlocks[bankTarget]?.kindLabel.toLowerCase() : 'Exercise bank' }}

Nothing fits that.

Showing {{ bankShown.length }} of {{ bankFound.length }}. Search to narrow it down.

How to write it

Squat: 3 × 10 reps @ 40 kg sets, reps, load

Lunge: 3 × 8/side reps each side

Plank: 3 × 45s a hold (or 1:30, 2 min)

Row: 12, 10, 8 reps @ 20 kg sets that differ

Superset: 3 rounds then "- " lines under it

Circuit 15 min a timed circuit

... // keep the back flat a note

... https://youtu.be/… a video

No video yet for {{ strengthUnmatched.join(', ') }}. Add one in the exercise library, or put a link on the line.

Preview

{{ strengthPreview.sets }} sets · {{ strengthPreview.exercises }} exercises · {{ strengthTime }}

  1. {{ block.label }} {{ block.heading }}

    {{ block.notes }}

    {{ row.label }}

    {{ row.title }} Video

    {{ row.notes }}

    {{ si + 1 }}
    {{ row.sets }}