Tap any number of muscles to spotlight them. Your selection carries over to the Form Check tab too, as a pulsing ring on top of whatever correctness color that part already has. Check "Isolate" to hide everything except what's spotlighted or being tracked. Use "Muscle size" if the shapes are sticking out past your body.
Muscle balance
Muscle size
Bicep0% difference
L 0%R 0%
Quad0% difference
L 0%R 0%
Shoulder0% difference
L 0%R 0%
Mock data — three sensor pairs simulated (six virtual sensors). Real bilateral comparison needs one sensor per side per muscle, which is more hardware than the original 3-sensor plan covers. See the README for what that means for your build.
Record movement
Records your camera with the live skeleton overlay. When you stop, you choose whether to save the clip — saved clips are timestamped and land in your History with that session's stats.
Label this session
Compare against (YouTube)
The tutorial plays here beside your camera so you can mirror it. In-video pose analysis of the pro isn't available yet — this is a visual side-by-side for now, with a hook left in the code for future automated comparison.
Body calibration
The avatar places muscles from your body's real proportions. Calibrating measures those proportions so limbs sit where they should instead of using rough defaults. Stand back so your whole body is in frame, then follow the poses — about a minute.
Step 1 / 4
T-pose
3
Get into position
✓ Calibration complete
Note: pose tracking is 2D and front-facing, so calibration tunes limb proportions and sizing — it can't recover true front/back depth. The side and back steps mainly confirm your framing. See the README for detail.
Get in frame
Stand facing the camera
⚠
Balanced
No significant left/right asymmetry detected
Ready to record
00:00
Save this recording to your history?
EMG signals
mock data — no sensors connected
CH1 · bicep0%
CH2 · forearm0%
CH3 · trapezius0%
Workout calendar —
Progress over timelast sessions
Average left/right asymmetry per session — lower is more balanced.
Good-form time per session — higher means more of the session was in good form.