Compiling this project requires Emscripten, the LLVM-based compiler to produce Wasm. Detailed instructions on how to install emcc
/em++
are available in the Getting started guide. We use Installation instructions using the emsdk (recommended).
The project also depends on Rapid YAML but the amalgamated header file src/ryml_all.hpp
has been pushed to the repository. This can be re-generated by running a Python script in the cloned rapidyaml
repository:
python3 ./tools/amalgamate.py
Build the project with its Makefile
:
make all
This will produce JavaScript output and Snowflake UDF definitions in the folder dist
.
Verify correctness by running unit tests with
node test.js
If any assertion fails, an error will be raised.