A 2D vector rigging and animation engine in Rust: bones, IK, skinning, deformers, state machines, CLI, browser studio.
翻訳待ち
Loading the full README.
Read the full README ↗Languages: English · Română · Français · Italiano · Español · Português · Deutsch · Magyar
A 2D vector rigging and animation engine in Rust: bones, IK, skinning, deformers, a state machine runtime, a command-line toolbox, a browser studio and embeddable libraries, in one workspace.
What it makes: the built-in walking person, exported with osatura demo-person and osatura export (the whole project is one JSON file). Try it in two minutes: docs/GETTING_STARTED.md.
Code signing policy · Privacy · Download
OSATURA lets you build a character or a scene from vector shapes and images, rig it with bones and constraints, animate it with keys, clips and physics, and send it out as GIF, video, Lottie, glTF, a self-contained HTML player or an interactive runtime. It is made of small, deterministic pieces: the same project and the same seed give the same pixels, every tool reads and writes a documented JSON project, and every command works from a terminal, so animation can be scripted, reviewed, diffed and tested like source code.
Principles that shape the project:
cargo deny.Name: the project was called ARMATURA until 24 Oct 2026 and was renamed OSATURA after a trademark search (docs/LIMITATIONS.md L-78). The repository and the site address were renamed too (old repository links redirect).
Alpha. Latest published pre-release:
v0.1.0-alpha.5. The executables for Windows x86-64, macOS arm64 and Linux x86-64 and the WebAssembly module are built by GitHub Actions and attached to a draft pre-release on https://github.com/chiuta/osatura/releases (a draft is visible only to the owner until it is published by hand). All crates are still version0.1.0; "v0.5 / v0.6 / v0.7" are feature levels in the history, not release numbers (CHANGELOG.md).
Verified Not verified Local (Linux x86-64, 24 Oct 2026): 1343 tests of cargo test --workspace --exclude osatura-gpu --exclude osatura-guiplus 19 doc-tests pass (the GPU crate needs an adapter and the window crate a desktop; before this the count including the GPU crate was 1368). On GitHub Actions (24 Oct 2026, toolchain 1.97.0): the test suite andclippy -D warningspass on Linux, macOS (arm64) and Windows;cargo denyandreuse lintpass; the WebAssembly module builds forwasm32-unknown-unknownand the wrapper's test passes against the real module under Node 20; the release binaries pass a smoke test (--version,demo,check,render) andosatura-studio --selftestruns on Windows and macOS. Five headless-Chromium smoke tests of the studio pass locally (CI does not run them); the CLI, the Rust facade and the C ABI (also under ASan/UBSan) were run with the examples in the docsNo person has used the executables on a real Windows or macOS desktop: the Windows double-click launcher and the osatura-studiowindow app (WebView2 / WKWebView) were only compiled and self-tested in CI; the binaries are not code-signed (SmartScreen "Unknown publisher", macOS Gatekeeper); the Linux binary was built on an Ubuntu runner only; the WebAssembly module was run only in headless Chromium (Firefox and Safari were not tried; about 73 ms per 640x480 frame without a GPU); the studio was never used by a person in production, nor in a browser other than Chromium; no real GPU (only a software adapter), webcam, photograph or motion-capture file was ever used; no security audit, lawyer review or patent searchRead docs/LIMITATIONS.md (78 numbered limits with severity and workaround) before you depend on anything.
This is the beginning of the README. Read the rest at the original. Read the full README ↗