Hans-Halverson/brimstone: New JavaScript engine written in Rust

Brimstone is a JavaScript engine written from the ground up in Rust, with the goal of achieving full support for the JavaScript language.

Brimstone is a work in progress but it already supports almost all JavaScript languages ​​(97% of ECMAScript languages ​​in Test262). Not ready for production use.

Implements the ECMAScript specification. Heavy inspiration is drawn from the design of V8 and SerenityOS’s LibJS. Brimstone chooses to implement almost all components of the engine with minimal dependencies, with the notable exception of ICU4X.

Brimstone Features:

  • Bytecode VM, heavily inspired by the design of V8’s Ignition
  • Compacting Garbage Collector, written in Very unsafe corrosion
  • custom regexp engine
  • custom parser
  • Almost all built-in objects and functions are implemented on the spec.

Standard cargo Gives orders to build and run.

  • cargo build to build bs Execution
  • cargo run to run from source

JavaScript files can be executed bs,

# Build brimstone
cargo build

# Execute a JavaScript file
./target/debug/bs ./hello.js
Hello world!

Brimstone relies heavily on a set of first and third party integration test suites, particularly the official test262 test suite. A custom integration test runner is included. It can be run with:

Unit and snapshot tests can be run with cargo test,

See the test README for more information about the test.

All features up to ES2024 have been implemented, as well as all Phase 4 proposals from the February 2025 TC39 meeting, except for the following features:

  • SharedArrayBuffer
  • atomics



Leave a Comment