Quanta is an experimental ECMAScript (or JS) engine focused on both memory efficiency and execution speed.
You can review executed tests here: quanta.js.org
If the results are outdated, use the dedicated runner
You can reach all the documentation files from here.
Details
Quanta uses Clang++ across all platforms.
Windows
# Install LLVM and add to PATH
clang++ --version
git clone https://github.com/solarbrowser/quanta
cd quanta
build-windows.batLinux
# Ubuntu/Debian
sudo apt install clang lld
# Fedora
sudo dnf install clang lld
# Arch
sudo pacman -S clang lld
git clone https://github.com/solarbrowser/quanta
cd quanta
./build.sh
# or
make -j$(nproc)macOS
xcode-select --install
git clone https://github.com/solarbrowser/quanta
cd quanta
./build.sh
# or
make -j$(nproc)Build Outputs
- Windows:
build/bin/quanta.exe - Linux/macOS:
build/bin/quanta - Static Library:
build/libquanta.a - Logs:
build/build.log,build/errors.log
Usage
# Run a JavaScript file
./build/bin/quanta example.js
# Start REPL
./build/bin/quantaDetails
- Windows: Ensure LLVM is in PATH, restart terminal
- Linux: Install clang and lld
make clean
# or delete build/ directoryCheck logs:
build/errors.log
- Improve spec compliance
- Implement bytecode virtual machine (VM)
More here
Please ignore the CONTRIBUTING.md file for now. I kept it because I don’t want to recreate it when the initial release is ready.
At this stage, I want to fully shape Quanta’s architecture on my own, without external changes. The engine is evolving rapidly, and even small additions can unintentionally break other parts of the system. For that reason, I prefer to develop it solo until the initial release. Thanks for your understanding and for considering contributing!
This project is licensed under the Mozilla Public License 2.0 - see the LICENSE file for details.