Drop your frames, tune everything live, watch it move, run the quality gates, then download a zip that uploads perfectly. No JSON editing — the form does it.
Drag PNG frames here
or click to choose — auto-sorted by file name (frame_2 before frame_10). 4–12 frames; 480px square is the contract cell.
Loop = plays forever (idle states). One-shot = plays once then returns; "hold last" freezes the final pose instead (states that persist, like "working").
drop frames to see it move
ℹ Changing playback settings (fps, loop, hold-last, semantics, floor) after a PASS does not re-run the gates — the download zip keeps the settings from the last gate run. Hit “Run the quality gates” again after any change to re-arm with your newest values.