Skip to content
indexable-incPublic

About

Incremental rust builds up to 92x faster than cargo/rustc

Topics

Resources

Contributing

Security policy

Stars

403 stars

Watchers

0 watching

Forks

Repository files navigation

blaze

Rebuild Rust in milliseconds.

The same commands as cargo, with blaze in front.
Blazingly fast Rust, literally.

Install · Try it · How fast · How it works · Docs

Install

curl -fsSL https://raw.githubusercontent.com/indexable-inc/blaze/main/install.sh | sh

For macOS on Apple silicon and Linux, with or without Rust installed: blaze downloads the Rust it builds with once (about 100 to 135 MB), or uses rustup's. Rather use crates.io or Nix? Other ways to install.

Try it

In any Rust project:

blaze run     # like cargo run
blaze test    # like cargo test
blaze build   # like cargo build

The first build runs cargo, then waits a few seconds for blaze to load your project. Then change a function and build again: it's back in milliseconds, and the Finished line says [ra-jit] (blaze's engine). Every other cargo command passes straight through to cargo. Where cargo is installed, cargo blaze run is the same as blaze run.

How fast

  • Edits rebuild 10× faster on macOS arm64, 24× faster on Linux aarch64 and 11× faster on Linux x86-64 than with cargo build, on average over real projects.
  • About 20 ms from saving a file to a running program using the new code, with live edits.
Edit one function, then build (Linux x86-64) cargo build cargo blaze build
ripgrep 508 ms 56 ms (9.1× faster)
nushell 1.25 s 236 ms (5.3× faster)
helix 2.15 s 116 ms (19× faster)
bun (1.25M lines of Rust) 9.11 s 451 ms (20× faster)

Every project, platform, chart, and the memory and disk it takes: benchmarks.

How it works

blaze runs beside cargo and keeps your project compiled in memory. After an edit it compiles only the functions you changed and writes them into the program cargo already built, instead of linking it again from scratch. A program that opts in can take the new code while it keeps running. More.

Good to know

  • macOS on Apple silicon and Linux. On Windows every build is cargo's.
  • Stable Rust. blaze builds your project with Rust 1.99.0 whatever toolchain it pins, so code that needs a nightly's features isn't for blaze yet.
  • It trades memory for speed: a few GB for a small project.
  • It's young. Keep cargo check or your CI as the final word, and tell us when something differs from cargo.

All the details: what works and what doesn't yet.

Learn more

Demo: a Game of Life you can edit

nix run github:indexable-inc/blaze

This opens a Game of Life window. On macOS on Apple silicon you can change its rules, colours and speed while it runs; elsewhere the window runs without live edits. It needs Nix, and builds blaze from source the first time.

Editing the running Game of Life: rule, colours and speed change live

Updates

Tell us you use blaze

For release news: Watch → Custom → Releases on GitHub.

Contributing

How to build blaze from a checkout, run its tests and send a change: docs/contributing.md. To report a security problem: SECURITY.md.

Credits

blaze stands on the shoulders of giants. Thank you to the people who built:

  • rust-analyzer, whose analysis and MIR blaze compiles from
  • Cranelift (Bytecode Alliance), the fast code generator
  • LLVM and inkwell, for the optimised tiers
  • salsa, the incremental engine underneath
  • object, for reading and writing executables
  • Rust and its compiler crates
  • rustd (DioxusLabs), whose code blaze includes

None of these projects endorses blaze.

blaze was called ra-jit until 2026-10-24; cargo ra-jit still works. Made at ix for den's native app. MIT or Apache-2.0.

About

Incremental rust builds up to 92x faster than cargo/rustc

Topics

Resources

Contributing

Security policy

Stars

403 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages