Skip to content

AnimCode motion. Render it exactly.

Anim is a purely functional and statically typed animation language for precise 2D motion, with a headless renderer for SVG, PNG, and repeatable video pipelines.

Pure Anim source · 60 fps preview
Early access · 0.1 previewAnim is ready to explore, but the language and CLI can still change between releases. The installer always fetches the newest preview build.

Differential dynamics, after John Whitney

One hundred and forty points sit on a single ray. Each turns at a different multiple of the same rate, so the ray curls itself into a new rosette every few seconds — the technique John Whitney used in Catalog (1961), in fourteen lines. This player compiles the source to WebAssembly in your browser and renders it to Canvas 2D. Press Edit code, change the point count, the sweep, or a colour, and the preview recompiles as you type.

Live canvasDifferential dynamics
400 × 30060 fps
Animated preview for Differential dynamics.
Loading renderer…
0.00s · 1 / 1

From a file to exact output

Install Anim, save a composition as hello.anim, then check and render it:

sh
anim check hello.anim
anim render hello.anim --frame 60 -o frame.svg
anim render hello.anim --range 0..180 -o frames/frame_%04d.png

The same source can render one targeted frame, a numbered image sequence, or a video through a local FFmpeg installation. Start with the ten-minute tutorial, or read the CLI and language reference.

What works today

Shape and composeRectangles, ellipses, triangles, cubic paths, stacks, transforms, clips, masks, and group opacity.
Animate with exact timeTweens, Bézier easing, keyframes, sequences, repeats, signal arithmetic, and immutable collection transforms.
Render where you workA deterministic CPU renderer, SVG export, a browser WebAssembly player, and native CLI builds for macOS, Linux, and Windows.
Bring selected Lottie workA fail-closed importer covers a documented 2D profile and reports unsupported constructs instead of silently changing them.

Pick your path

Anim is currently a proprietary runtime with MIT-licensed documentation and examples. See installation, update, and removal details before adopting a preview build. Found a rough edge? Send launch feedback.

Anim 0.1 preview · Documentation and examples are MIT licensed · Runtime binaries are proprietary