
A modern JavaScript runtime implemented in Rust, powered by the Boa JavaScript engine and integrated with Tokio for asynchronous operations.
JetCrab is a JavaScript runtime that provides a complete execution environment with built-in APIs for I/O, networking, and system operations. Built on top of the Boa JavaScript engine and integrated with Tokio for asynchronous operations, JetCrab offers a modern alternative to Node.js with Rust's performance and safety guarantees.
git clone https://github.com/JetCrabCollab/JetCrab.git
cd JetCrab
cargo build --release
cargo install jetcrab
# Linux/macOS (installs both jetcrab and claw)
curl -sSL https://raw.githubusercontent.com/JetCrabCollab/jetcrab/main/scripts/install.sh | bash
# Windows PowerShell (installs both jetcrab and claw)
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/JetCrabCollab/jetcrab/main/scripts/install.ps1" | Invoke-Expression
📚 Complete documentation is available in the docs/ directory:
# Run a JavaScript file
jetcrab run examples/console_test.js
# Evaluate JavaScript code directly
jetcrab eval "console.log('Hello, JetCrab!'); 42 + 8"
# Start interactive REPL
jetcrab repl
# Initialize a new project
claw init my-project
# Install packages
claw install react lodash
# Start development server
claw dev
// Console API
console.log("Hello, JetCrab!");
console.error("Error message");
console.warn("Warning message");
// Process API
console.log("Version:", process.version);
console.log("Current directory:", process.cwd());
console.log("Arguments:", process.argv);
// Fetch API
fetch("https://api.github.com/users/octocat")
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error("Fetch error:", error));
JetCrab includes Claw, a modern package manager that provides unified dependency management for both JavaScript and Rust packages:
# Initialize a new project
claw init my-project
cd my-project
# Install JavaScript packages
claw install react lodash
# Install Rust crates
claw install serde tokio
# Start development server
claw dev
For complete documentation, see the Claw Package Manager Guide.
JetCrab follows a layered architecture:
This separation ensures that Boa focuses on JavaScript execution while JetCrab manages runtime services and Tokio handles asynchronous operations.
JetCrab leverages the Boa JavaScript engine as its core execution engine. This integration provides:
We contribute improvements and optimizations back to the Boa project, ensuring the entire ecosystem benefits from our enhancements.
console.log(...args) - Log messages to stdoutconsole.error(...args) - Log error messages to stderrconsole.warn(...args) - Log warning messagesconsole.info(...args) - Log info messagesprocess.argv - Command line argumentsprocess.env - Environment variablesprocess.version - Runtime versionprocess.cwd() - Current working directoryfetch(url, options) - HTTP requests with Promise supportresponse.text(), response.json()# Debug build
cargo build
# Release build
cargo build --release
# Run tests
cargo test
# Run benchmarks
cargo bench
# Format code
cargo fmt
# Lint code
cargo clippy
# Check for security vulnerabilities
cargo audit
# Generate documentation
cargo doc --open
# Generate API documentation
cargo doc --no-deps
We welcome contributions to JetCrab. Please see our Contributing Guide for details on how to get started.
JetCrab is designed for performance with the following characteristics:
JetCrab prioritizes security through:
JetCrab is licensed under the MIT License. See LICENSE for details.
JetCrab is built on top of several excellent open-source projects:
JetCrab - Modern JavaScript Runtime in Rust
$ claude mcp add JetCrab \
-- python -m otcore.mcp_server <graph>