Node-based image processing for the web and desktop
Cascade is a free node-based image editor. Wire nodes together to build reusable editing pipelines, then apply them to any image. It runs entirely in your browser — no install needed — and ships as a macOS desktop app for users who want native filesystem access.
- Visual node graph — Connect typed inputs and outputs; cycles are rejected and dirty propagation flows downstream automatically
- Type-checked connections — The engine enforces connection types at the graph level, not just in the UI
- GPU-accelerated nodes — Per-pixel transforms run as wgpu compute shaders via GLSL kernel manifests; CPU fallback when GPU is unavailable
- Built-in nodes — Color correction, blending, filters, resize, alpha compositing, sRGB conversion, and more
- Linear color pipeline — All processing in linear f32 RGBA; sRGB conversion only at I/O boundaries
- Scripted GPU kernels — Register custom GLSL kernels via JSON manifests without writing Rust
- Replicate-backed nodes — Use Replicate models as processing nodes with a user-supplied API token
- AI assistant — In-app assistant powered by a user-supplied Anthropic API key
- All AI features are optional and bring-your-own-key; ignore them entirely if you do not need them
- Web — Runs in the browser via WebAssembly; ships both single-threaded and threaded WASM bundles
- Desktop (macOS) — Native app via Tauri with filesystem access, native packaging, and Tauri shell features
- Shared core — Web and desktop targets share the same Rust engine
The web app is the fastest way to evaluate Cascade. No installation required — the engine runs via WebAssembly in your browser.
Deployment note: The threaded WASM bundle requires SharedArrayBuffer, which means serving the app with Cross-Origin-Opener-Policy: same-origin and Cross-Origin-Embedder-Policy: require-corp. Without those headers the app falls back to the single-threaded engine automatically.
Download the latest signed DMG from GitHub Releases:
Requires macOS 10.15 (Catalina) or later.
Local setup, build commands, and contributor-facing references live in CONTRIBUTING.md and AGENTS.md.
Contributions are welcome! Please:
- Check existing issues or create a new one to discuss your idea
- Fork the repository and create a feature branch
- Follow the code style (
cargo fmtfor Rust, ESLint for TypeScript) - Update documentation as needed
- Submit a pull request
For detailed development guidelines, see AGENTS.md and CONTRIBUTING.md. Please also read CODE_OF_CONDUCT.md before participating in discussions or pull requests.
Cascade is released under the MIT License. See LICENSE for details.
Built with:
- Tauri — Rust-powered desktop framework
- React — UI framework
- React Flow — Node graph UI
- wgpu — GPU compute pipeline
- Rayon — CPU parallelism
- Zustand — Frontend state management
- wasm-bindgen — WebAssembly bridge
- Vite — Frontend build tooling