Ballerina Nutcracker

Starts instantly, ships as one self-contained binary, and keeps the footprint small.

 Experimental project. Ballerina Swan Lake remains the production distribution.

Live editorEdit the code, then hit Run to execute it in your browser.
Starting the live editor…
Runs on WebAssembly — nothing to install.Open in Playground

What is Ballerina Nutcracker?

Ballerina Nutcracker is a native interpreter for the Ballerina language, written from the ground up in Go. It runs Ballerina programs directly as a self-contained native binary — without a Java Virtual Machine — making it lightweight and fast to start.

The goal is to explore a runtime that is small enough to embed anywhere and quick enough for command-line tools, scripting, edge, and serverless workloads, while staying faithful to Ballerina’s semantics. It is developed openly and released incrementally as it grows its coverage of the language and standard library.

Download

Looking for another version or release details? Browse all releases on GitHub

Get started

Download the archive for your platform and run it directly — no install, and it won’t affect an existing bal (e.g. Swan Lake) on your PATH:

# macOS / Linux — the zip extracts a ballerina-<version>/ folder
unzip ballerina-bal-*.zip

# Run it by path — no PATH changes, works alongside Swan Lake
./ballerina-*/bal run hello.bal

Want Nutcracker as your default bal? Add its folder to your PATH— just note it will then shadow any other bal in that shell.

Community

Join the conversation

Nutcracker is a young, fast-moving project built in the open — and this is the best time to help steer it. We run everything on GitHub Discussions: design decisions, questions, and early feedback all happen there. Jump in, say hello, and help shape the roadmap.