# 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](https://wapm.io/interface/wasi). ## Running ### With wasmer Install it with: ```bash wapm install -g quickjs ``` Without any arguments a simple REPL will be launched. ```bash # Run a file qjs --dir=. examples/hello_module.js # Run the REPL qjs ``` ### With wasmtime First build it by following the instructions in "Building". ```bash # 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. ```bash ./build.sh ```