Build from source
Building Rusting needs stable Rust 1.95 or newer. The repository's rust-toolchain.toml selects stable automatically when you use rustup.
git clone https://github.com/HalfdanIsaksen/rusting
cd rusting
cargo run -p desktopDevelopment commands
cargo test --workspace # run all tests
cargo clippy --workspace --all-targets -- -D warnings
cargo fmt --all --checkSet RUST_LOG=debug for more log output.
Project layout
| Crate | Responsibility |
|---|---|
animation_core | Frames, FPS, time conversion, IDs, colours, interpolation |
timeline | Tracks, keyframes, stepped exposure, playback |
drawing | Vector strokes, brushes, drawings, tessellation |
scene | Layers, ordering, visibility, lock, transforms |
document | The project document and per-frame evaluation |
file_format | Versioned .rusting save/load and validation |
editor | Editor state, commands, undo/redo |
renderer | wgpu device, surface, canvas and stroke rendering |
export | Image and MP4 export |
ui | Editor panels (egui) |
apps/desktop | The executable: window, event loop, wiring |
Contributing
Each feature is built on its own feat/<name> branch and must pass fmt, clippy -D warnings and test before merging. See the repository for the roadmap and architecture notes.