Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

226 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quickjs-oxide

An independent Rust rewrite of QuickJS, targeting semantic feature parity with the official QuickJS 2026-06-04 release and its ES2025 behavior.

The unsafe-free engine is runnable but incomplete. The current R3ac milestone adds ordinary async object-literal methods on the existing async execution path, including QuickJS-compatible method identity, super, source, and token timing. Oxide passes the focused 76/76 variants across 42 admitted paths; pinned QuickJS passes all 49 candidate paths. The conservative full vector is 43,659/102,037 with no previous-pass regression. Public/private async class methods, async generators, modules, Proxy, and broad built-in coverage remain incomplete. Pinned QuickJS is the test oracle, never a product dependency. See the status documents below for the R3z/R3aa/R3ab history and reproducible R3ac evidence.

Try it

Rust 1.85 or newer is required.

git clone https://github.com/pocket-stack/quickjs-oxide.git
cd quickjs-oxide
./scripts/demo-42.sh  # 42
cargo run --quiet --bin qjs -- --print-result -e \
  '(function (a) { return a + 1; })(41)'  # 42

Status

Verify

cargo test --locked --workspace --all-targets
./scripts/test-test262-class-public-init.sh
./scripts/test-test262-class-private-fields.sh
./scripts/test-test262-class-private-{methods,accessors}.sh
./scripts/test-test262-class-generator-methods.sh
./scripts/test-test262-class-private-generator-methods.sh
./scripts/test-test262-class-sync-matrix.sh
./scripts/test-test262-promise-{race-try-with-resolvers,finally,all,all-settled,any}.sh
./scripts/test-test262-regexp-builtins.sh
./scripts/test-test262-generator-destructuring.sh
./scripts/test-test262-iterator-helpers.sh
./scripts/test-test262-iterator-sequencing.sh
./scripts/test-test262-async-function-core.sh
./scripts/test-test262-async-arrow-core.sh
./scripts/test-test262-async-object-method-core.sh
./scripts/test-r3z-async-function-core-oracle.sh --oxide ./target/debug/qjs

License

MIT. Third-party notices are retained in NOTICE and LICENSES.

About

An independent Rust rewrite of QuickJS targeting semantic feature parity

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages