quickjs package icon
saghul/quickjs

wasi

Public
wasmer run saghul/quickjs

QuickJS

QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous generators and proxies.

It optionally supports mathematical extensions such as big integers (BigInt), big floating point numbers (BigFloat) and operator overloading.

Original Source: https://bellard.org/quickjs/quickjs-2019-09-18.tar.xz

Modifications: We made some changes to adapt the codebase to the WASI interface.

Running

With wasmer

Install it with:

wapm install -g quickjs

Without any arguments a simple REPL will be launched.

# Run a file
qjs --dir=. examples/hello_module.js

# Run the REPL
qjs

With wasmtime

First build it by following the instructions in "Building".

# Run a file
wasmtime --dir examples/ build/qjs.wasm -- examples/hello_module.js

# Run the REPL
wasmtime --dir . build/qjs.wasm

Building

The following script will download the WASI SDK and build the Wasm binary.

./build.sh

QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous generators and proxies.


Github