Licensed under either of
- Apache License, Version 2.0 (
LICENSE-APACHEor http://www.apache.org/licenses/LICENSE-2.0) - MIT license (
LICENSE-MITor http://opensource.org/licenses/MIT)
at your option.
Code-oriented Animation eNgine Designed for tYpst.
Candy turns .tyx files — standard Typst documents extended with a small set of
animation directives — into self-contained videos (MP4 / MKV / WebM), animated GIFs,
or static PNG posters. Inspired by 3Blue1Brown's
Manim, with API inspiration from
tanim and
kino.
The backend is written in Rust and renders in-process with the typst compiler
library — no CLI invocation. Default codec (x264) requires system ffmpeg; falls back
to self-contained openh264 (h264) when unavailable.
- New to Candy? Read the Tutorial — it walks you from install to your first clip, then through transforms, scenes, subtitles, and output.
- Looking something up? Jump to the Reference — the full directive list, easing curves, counters, CLI flags, codec matrix, error codes, and the Rust API.
| Section | Audience | Contents |
|---|---|---|
| Tutorial | .tyx authors (Typst users) |
Install, first clip, animation basics, transforms, scenes/camera/groups, subtitles & counters, output & codecs. |
| Reference | Everyone | Directives, easing, counters, CLI, codecs, error model, Rust API & architecture. |
# From crates.io (the published crate is named candy-animation)
cargo install candy-animation
# Or build from source
git clone https://github.com/ViCo-Lab/candy
cd candy/rust && cargo build --release
# the binary is `candy`See Tutorial · Install for prerequisites and offline-build notes.