The pipeline
Start here
Quickstart
Install a package and play your first animation in three steps.
The MotionDoc format
The small, readable document that holds your whole animation.
The render engine
One pure method —
sample(doc, t) — does all the work.Adapters
DOM, Canvas, React and React Native — one document, every platform.
Why Blinn Motion
Figma as source of truth
Keyframes, springs and curves come from the Motion timeline — no hand rebuild in CSS,
no After Effects detour for product UI motion.
Identical timing everywhere
Same resolved tree, same shared clock. An animation times the same on every adapter.
Open format you can own
MotionDoc is small, readable JSON — inspectable, git-diffable, versionable.
Built for product UI
Real frames and transforms, not only illustration loops. Drop into vanilla JS, React or
React Native with a thin adapter.
When to use Blinn
| Fit | Use Blinn when… |
|---|---|
| ✅ Primary | Motion already lives in Figma and should ship in the app |
| ✅ | You need seek / scrub / shared timing across web and native |
| ✅ | You want a diffable motion artifact in git |
| — | You only need a one-shot video or GIF for social |
| — | Motion is authored only outside Figma (different pipeline) |
Blinn Motion is an independent, MIT-licensed project — the runtime for Figma Motion, not a
wrapper around another motion ecosystem.