StartupXO
Language

Language

Technology

Bun Rewrites from Zig to Rust — Why a Fast Runtime Is Starting Over

Published: 2026-05-10

BunJSRustSystemsProgrammingJavaScriptRuntimeDevTools

Bun launched in 2022 as a JavaScript runtime faster than Node.js, built with Zig — an unusual systems language chosen for low-level performance and direct C FFI when wrapping the JavaScriptCore engine. On May 10, 2026, creator Jarred Sumner announced the Rust rewrite passes 99.8% of Bun’s existing test suite on Linux x64 glibc. Why rewrite an already fast runtime?

Why Rust, Not Zig

Zig was a deliberate choice in 2022. Its comptime evaluation and zero-runtime design minimized overhead when calling JavaScriptCore’s C++ interfaces. But Zig’s ecosystem remains narrow: no central package registry comparable to crates.io, a small hiring pool, and slow open-source contributor growth.

Rust is now the practical standard for systems programming. AWS Firecracker, Cloudflare’s Workers runtime (workerd), and Linux kernel drivers are built in Rust. The White House ONCD and NSA have formally recommended Rust for memory safety. As of 2026, choosing Rust means choosing a contributor pool orders of magnitude larger than Zig’s.

Bun’s Rust move is about ecosystem integration, not raw performance gains. More contributors, better security tooling, and more hireable engineers.

What 99.8% Actually Signals

A 99.8% pass rate on a full rewrite proves that Bun had comprehensive test coverage of its Zig codebase before starting. Without tests, you cannot know where behavior diverges during a rewrite. The remaining 0.2% and platform gaps (macOS arm64, Windows) are still in progress — hence “experimental.”

The Register called it “half-baked,” which is accurate. But half-baked also means half is done. The correctness-first approach mirrors what vLLM’s V0→V1 migration described explicitly: get behavior identical before optimizing.

Startup Takeaways

Rust-native developer tooling. Bun joining Deno (already Rust-native) signals that Rust is becoming the implementation language for high-performance runtimes, compilers, and dev tools. Teams with Rust expertise can now build open-source developer tools with contributor dynamics that were impossible three years ago.

Runtime migration tooling. As companies move from Node.js to Bun or Deno, compatibility issues remain manual work. Automated dependency analysis, compatibility validation, and performance benchmarking tools have growing demand as migration pace accelerates.