Overview
What Valo is and which package to use.
Valo is a WebGPU-native 2D render engine built with Rust and wgpu. It follows the architecture of Flutter's Impeller: no shader compilation at draw time.
Use the valo crate from Rust on native platforms or in a browser through
WebAssembly. JavaScript and TypeScript applications use valo-web — Valo's
own API or a Canvas2D-compatible adapter. Valo supports every platform wgpu
supports, including Windows, macOS, Linux, iOS, Android, and the web.
Packages
valo— Rust API on docs.rs (native, wasm)valo-web/raw— JavaScript engine APIvalo-web— Canvas2D adaptervalo-capi— C ABI
valo-web is a thin JavaScript wrapper over the same engine. A Rust app
compiled to WebAssembly imports valo directly.
Getting started
Install a package and record your first rectangle.
Playground
Inspect drawing features from the JavaScript engine API.
Drawing is two steps: record a DisplayList, then submit it to a Context.
Getting started shows that in code.
Reference covers each type in order.