← The validator playground

Animator studio

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.

1 · Frames

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.

2 · Settings — live

Loop = plays forever (idle states). One-shot = plays once then returns; "hold last" freezes the final pose instead (states that persist, like "working").

3 · Preview — instant

drop frames to see it move

4 · Quality gates — run before download

ℹ 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.

⬇ Download upload-ready zip

The studio is additive — the validator playground stays at /examples/animations. Same gates, same engine (pack.py sha-pinned in every verdict), same upload format.