Build on Pixel Stroke
Pixel Stroke is a pixel-art editor you can script. The tools in the editor sit on the same layer you can drive yourself: a small Rust core, a WebAssembly runtime, and Rhai bindings for the whole toolset.
These pages cover the parts you can build against. The scripting guide covers Rhai: macros, custom tools, panels and workflow automation. The API reference lists every binding. Both pages are growing as the public API settles.
What you can do today
- Macros. Save a sequence of filter, layer and palette operations as a function you can call.
- Custom tools. Build a tool that takes a selection, changes its pixels, and draws a stroke through the same pipeline as the editor's brush.
- Panel scripts. Write whole side panels in Rhai. The toolbar, layer list, timeline and palette picker in the shipped editor are all panel scripts.
- Workflow automation. Batch-export tile atlases, generate icon sets, run procedural fills, and drive animations frame by frame.
What's coming
- Stable bindings for the stamp brush, the drawer and the animation brush once they land in the editor.
- A debugger for scripts, with breakpoints and state inspection.
- A package registry for sharing macros and panels.
Stability promise
Pixel Stroke hasn't reached 1.0 yet. The Rhai bindings are the only public contract, and the Rust crates behind them can change without notice. A binding marked stable on these pages keeps its signature from one release to the next. One marked experimental might not.
Ground rules
These docs cover only what you can script: the public bindings exposed through Rhai. The Rust crates that implement them are internal and can move without warning.
Found a binding that's missing, broken, or under-documented? Write to contact@pixel-stroke.com.