Add the free-weight canon and bodyweight staples (16 exercises)

Squat/lunge: Barbell Squat, Goblet Squat, Bodyweight Squat, Lunge.
Bench station: Bench Press, Incline Bench Press, Dumbbell Bench Press,
Dumbbell Fly (the fly authors the face-on camera for its frontal arc).
Dumbbell rack: Dumbbell Row, Dumbbell Shoulder Press, Dumbbell Curl,
Lateral Raise - first uses of the dumbbell prop. Bodyweight: Push-Up,
Pull-Up, Crunch, Dip.

Claude-Session: https://claude.ai/code/session_01HJDQQDA9QdP8zByg43H5v3
This commit is contained in:
2026-07-07 12:09:08 -04:00
parent b71ee0a355
commit 5bbe3f6ff0
96 changed files with 2274 additions and 0 deletions
@@ -0,0 +1,19 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 180" fill="none">
<title>Bodyweight Squat</title>
<path d="M 141.8 157.5 L 232.3 157.5 L 232.3 150.2 L 141.8 150.2 Z" fill="none" stroke="#b9bec9" stroke-width="2.1" stroke-linejoin="round"/>
<path id="leg_l" d="M 164.1 90.9 L 169.8 122.1 L 162.8 148.9 L 170.3 150.7" stroke="#86cfc5" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_l" d="M 168.3 32.0 L 169.0 52.7 L 171.6 73.2" stroke="#a9afba" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="leg_r" d="M 160.0 91.3 L 160.0 123.4 L 160.0 149.2 L 160.0 152.2" stroke="#0d9488" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="girdle" d="M 168.3 32.0 L 164.2 31.9 L 164.2 33.3" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="pelvisBar" d="M 164.1 90.9 L 160.0 90.4 L 160.0 91.3" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="spine" d="M 160.0 90.4 Q 162.1 60.5 164.2 31.9" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_r" d="M 164.2 33.3 L 164.9 54.0 L 167.4 74.5" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<circle id="head" cx="165.6" cy="18.2" r="7.0" fill="white" stroke="#3a3f4b" stroke-width="4.2"/>
<line id="nose" x1="172.6" y1="18.2" x2="177.5" y2="18.2" stroke="#3a3f4b" stroke-width="2.8" stroke-linecap="round"/>
<g font-family="-apple-system, Helvetica, sans-serif" font-size="11" fill="#6b7180">
<line x1="224" y1="16" x2="238" y2="16" stroke="#3a3f4b" stroke-width="4" stroke-linecap="round"/>
<text x="243" y="20">near</text>
<line x1="273" y1="16" x2="287" y2="16" stroke="#a9afba" stroke-width="4" stroke-linecap="round"/>
<text x="292" y="20">far</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

@@ -0,0 +1,19 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 180" fill="none">
<title>Bodyweight Squat</title>
<path d="M 141.8 157.9 L 232.3 157.9 L 232.3 150.6 L 141.8 150.6 Z" fill="none" stroke="#b9bec9" stroke-width="2.1" stroke-linejoin="round"/>
<path id="leg_l" d="M 154.3 120.3 L 184.4 131.7 L 162.8 149.3 L 169.6 152.9" stroke="#86cfc5" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_l" d="M 182.3 68.1 L 203.3 67.4 L 223.9 63.8" stroke="#a9afba" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="leg_r" d="M 150.2 120.7 L 180.6 131.0 L 160.0 149.6 L 166.9 152.9" stroke="#0d9488" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="girdle" d="M 182.3 68.1 L 178.1 68.1 L 178.1 69.4" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="pelvisBar" d="M 154.3 120.3 L 150.2 119.8 L 150.2 120.7" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="spine" d="M 150.2 119.8 Q 166.3 94.3 178.1 68.1" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_r" d="M 178.1 69.4 L 199.1 68.7 L 219.8 65.1" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<circle id="head" cx="185.3" cy="56.3" r="7.0" fill="white" stroke="#3a3f4b" stroke-width="4.2"/>
<line id="nose" x1="192.3" y1="57.1" x2="197.2" y2="57.7" stroke="#3a3f4b" stroke-width="2.8" stroke-linecap="round"/>
<g font-family="-apple-system, Helvetica, sans-serif" font-size="11" fill="#6b7180">
<line x1="224" y1="16" x2="238" y2="16" stroke="#3a3f4b" stroke-width="4" stroke-linecap="round"/>
<text x="243" y="20">near</text>
<line x1="273" y1="16" x2="287" y2="16" stroke="#a9afba" stroke-width="4" stroke-linecap="round"/>
<text x="292" y="20">far</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

+37
View File
@@ -0,0 +1,37 @@
# Bodyweight Squat
The unloaded squat — arms reach forward as a counterbalance while the hips
sit down between the heels. The pattern every loaded squat is built on.
- **Category:** Warm-up and main circuit
- **Type:** Bodyweight squat
- **Targets:** Quadriceps, glutes, mobility
- **Prescription:** 3 × 1520, or 10 slow reps as a warm-up
## Setup
Stand with feet shoulder-width, toes slightly turned out, arms relaxed at
your sides.
## Execution
1. Reach the arms forward as the hips sit down and back.
2. Descend as deep as comfortable — thighs at least parallel — heels flat.
3. Stand back up tall and let the arms drop.
## Cues
- Knees track over the toes the whole way down and up.
- Chest up; the arms reaching forward keep you from tipping.
- Slow down — a three-second descent teaches control.
## Common Mistakes
- Heels lifting at the bottom.
- Knees diving inward.
- Shallow, quick bouncing instead of full, controlled reps.
## Progression
Slow the tempo, pause at the bottom, then load the pattern with the
Goblet Squat.
@@ -0,0 +1,30 @@
{
"name": "Bodyweight Squat",
"primary": 2,
"camera": {"zoom": 0.7},
"working": ["leg_r", "leg_l"],
"frames": [
{
"hold": 0.4, "tween": 0.9,
"root": {"pos": [160, 64], "pitch": 4},
"spine": [0, 0],
"neck": 2, "head": -6,
"shoulder_r": 6, "elbow_r": 5,
"shoulder_l": 6, "elbow_l": 5,
"hip_r": 4, "knee_r": 3, "ankle_r": 0,
"hip_l": 4, "knee_l": 3, "ankle_l": 0,
"pins": {"foot_r": [160, 148], "foot_l": [164, 150]}
},
{
"hold": 0.4, "tween": 0.9,
"root": {"pos": [146, 106], "pitch": 30},
"spine": [0, -4],
"neck": 5, "head": -24,
"shoulder_r": 118, "elbow_r": 8,
"shoulder_l": 118, "elbow_l": 8,
"hip_r": 98, "knee_r": 118, "ankle_r": 22,
"hip_l": 98, "knee_l": 118, "ankle_l": 22,
"pins": {"foot_r": [160, 148], "foot_l": [164, 150]}
}
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

@@ -0,0 +1,19 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 180" fill="none">
<title>Bodyweight Squat</title>
<path d="M 141.8 157.9 L 232.3 157.9 L 232.3 150.6 L 141.8 150.6 Z" fill="none" stroke="#b9bec9" stroke-width="2.1" stroke-linejoin="round"/>
<path id="leg_l" d="M 154.3 120.3 L 184.4 131.7 L 162.8 149.3 L 169.6 152.9" stroke="#86cfc5" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_l" d="M 182.3 68.1 L 203.3 67.4 L 223.9 63.8" stroke="#a9afba" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="leg_r" d="M 150.2 120.7 L 180.6 131.0 L 160.0 149.6 L 166.9 152.9" stroke="#0d9488" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="girdle" d="M 182.3 68.1 L 178.1 68.1 L 178.1 69.4" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="pelvisBar" d="M 154.3 120.3 L 150.2 119.8 L 150.2 120.7" stroke="#3a3f4b" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path id="spine" d="M 150.2 119.8 Q 166.3 94.3 178.1 68.1" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<path id="arm_r" d="M 178.1 69.4 L 199.1 68.7 L 219.8 65.1" stroke="#3a3f4b" stroke-width="4.2" stroke-linecap="round" stroke-linejoin="round"/>
<circle id="head" cx="185.3" cy="56.3" r="7.0" fill="white" stroke="#3a3f4b" stroke-width="4.2"/>
<line id="nose" x1="192.3" y1="57.1" x2="197.2" y2="57.7" stroke="#3a3f4b" stroke-width="2.8" stroke-linecap="round"/>
<g font-family="-apple-system, Helvetica, sans-serif" font-size="11" fill="#6b7180">
<line x1="224" y1="16" x2="238" y2="16" stroke="#3a3f4b" stroke-width="4" stroke-linecap="round"/>
<text x="243" y="20">near</text>
<line x1="273" y1="16" x2="287" y2="16" stroke="#a9afba" stroke-width="4" stroke-linecap="round"/>
<text x="292" y="20">far</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB