Waffle · a WebAssembly runtime for the browser

Whole programs, running together, in a browser tab.

Waffle is a WebAssembly (Wasm) runtime that lets programs run, and work with each other, entirely inside the browser. Our shell, Bash Web, and our browser build of Bun already run on it.

01 · THE GRID

Each square is a program.

An agent writing code. A dev server. A database taking queries, a test suite, a game server, a video job. Each one runs on its own.

02 · THE LINES

The lines are how they talk.

One program’s output is another’s input. The shell hands work to Bun, Bun refreshes the preview, the game server writes to the database.

03 · THE DEPTH

Every program gets a pocket.

Walls keep each one in its own space. The structure between them carries the traffic. All of it inside one tab.

A WebAssembly runtime for programs that run, and work together, in the browser.

Bash WebBun wasm
RUNNING ON WAFFLE TODAY

Two programs are already in the pockets.

Our shell and our browser build of Bun are built on Waffle. Open one and you are running on it.

$ echo "hello from a tab"
hello from a tab
$

Bash Web

runs on Waffle

Our shell, built on Waffle. A bash prompt that lives in a browser tab.

$ bun run index.ts
Hello via Bun!
$

Bun, in the browser

runs on Waffle

Our browser build of Bun, running on Waffle.

ABOUT THE REST OF THE WAFFLEThe agent, the game server, the database and the others are illustrations of the kind of work Waffle is built for. They are not a list of supported software.
HOW IT WORKS

Anatomy of a runtime.

A cross-section, for the engineers.

Programruns in its own pocketChannelcarries data between programsBrowser tabholds the whole thing
01

Run

Programs compiled to WebAssembly run inside the page. Nothing to install, no server to keep alive.

02

Connect

Programs work together: one program’s output becomes another’s input, the way a shell pipeline does.

03

Build on it

Bash Web and Bun are built on Waffle. The docs cover how it works and how they use it.

THE BLUEPRINTS

Documentation

Start here. How Waffle works, and how to run programs on it.

START HEREGetting startedRun your first program on Waffle →LEARNConceptsHow programs run and connect →REFERENCEAPI referenceEvery interface, in detail →GUIDEBash WebOur shell, on Waffle →GUIDEBunOur browser build of Bun →SOURCEGitHubCode, issues and releases →