Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,648 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Beejs

Website Release Runtime License

Beejs is a high-performance, fail-closed JavaScript and TypeScript runtime built with Rust and V8. Designed from first principles for sub-millisecond cold starts, native TypeScript execution, WebAssembly JIT, and robust Node.js/Web API compatibility.

Official Website & Documentation: https://bee.zhanghe.dev


Why Beejs

  • Fast & Lightweight: Built on Google V8 and Tokio for sub-4ms cold starts and low memory usage.
  • Native TypeScript & TSX: Instant execution without ts-node or tsx compilation wrappers; full Source Map error diagnostic alignment.
  • Fail-Closed Security Sandbox: Granular permission broker (--deny-fs, --deny-net) protecting against untrusted code execution.
  • WebAssembly Native JIT: Full V8 WebAssembly compilation, instantiation, and zero-copy WebAssembly.Memory buffer sharing.
  • Node.js & Web API Surface: Supported http stream responses (res.write), fs.promises, fetch, Streams, WebCrypto, Blob, and Worker standards.

Current Status

Beejs is at tag v0.1.0-repair-sprint with 100% of the core release test suite (357/357 tests) passing and zero clippy warnings. It is suitable for scripting workflows, AI agent sandboxing, microservices, and internals research.

See Current Scope for the detailed capability matrix (Stable, Preview, Experimental, and Historical).


Quick Install

Install the latest release with the official one-line script:

curl -fsSL https://bee.zhanghe.dev/install.sh | sh

Or specify a custom version tag or installation directory:

curl -fsSL https://bee.zhanghe.dev/install.sh | BEEJS_VERSION=v0.1.0-repair-sprint sh
curl -fsSL https://bee.zhanghe.dev/install.sh | BEEJS_INSTALL_DIR="$HOME/.local/bin" sh

Build from Source

You can also build the optimized release binary directly using Cargo:

git clone https://github.com/zh30/beejs.git
cd beejs
cargo build --release
./target/release/bee --version

Quick Start

Evaluate JavaScript inline:

bee eval "1 + 1"

Run a JavaScript or TypeScript file natively:

bee run examples/basics/hello_world.js
bee run examples/basics/typescript_demo.ts

Start the interactive REPL:

bee repl

Run test suite smoke checks:

bee test examples/testing/math.test.js

CLI Overview

Stable commands:

bee --version
bee --help
bee run <file> [args...]
bee eval <code>
bee repl
bee version

Preview and experimental commands:

bee test [file]
bee bundle <entry> --outfile dist/bundle.js
bee debug <file>
bee serve --host localhost --port 3000
bee init [name]
bee create my-app js
bee create my-ts-app ts
bee add <package>
bee remove <package>
bee install
bee prune
bee bunx <package> [args...]
bee upgrade [package]

See CLI usage guide for full options and examples.


Native TypeScript & WebAssembly

Beejs handles .ts, .tsx, and .wasm modules natively:

bee run examples/basics/typescript_demo.ts

For WebAssembly, Beejs exposes full WebAssembly.compile, WebAssembly.Instance, and shared WebAssembly.Memory buffer APIs through V8 JIT compilation.


Core Quality & Verification

Beejs maintains strict quality gates across Rust integration suites:

cargo build --release
cargo test --lib
cargo test --test wasm_v8_execution_tests
cargo test --test http_streaming_response_tests
cargo clippy --all-targets -- -D warnings

Documentation & Links


License

Beejs is released under the MIT License.

About

Beejs is a high-performance, fail-closed JavaScript and TypeScript runtime built with Rust and V8. Designed from first principles for sub-millisecond cold starts, native TypeScript execution, WebAssembly JIT, and robust Node.js/Web API compatibility.

Resources

Contributing

Stars

Watchers

Forks

Releases

Sponsor this project

Contributors

Languages