MandelbrotExplorer

Rust compiled to WASM, running in your browser and at the edge.

One Rust kernel, two runtimes: the browser executes it as WASM for the interactive canvas, while a Rust Cloudflare Worker renders high-resolution PNGs at the edge. Race it against JavaScript to see the difference.

Interactive Mandelbrot

Hold Ctrl (or ⌘) and scroll to zoom, drag to pan. Switch the engine — JavaScript, Rust WASM, or WebGL2 GPU — to see how each frame is produced.

200

WASM render

-

Resolution

960×540

Center

-0.700000, 0.000000i

Zoom

1.0×

JavaScript vs WASM vs GPU

The same viewport rendered by the TypeScript baseline, the Rust WASM module, and the GPU, back to back. Timings are measured in your browser.

Edge render (Rust worker)

The same viewport is rendered at 1920×1080 by the fractal-rust Cloudflare Worker and returned as a PNG. The render time comes from the x-render-time-ms response header.

The interactive canvas runs the shared kernel from packages/fractal-wasmcompiled to WASM; the edge render is served by the packages/fractal-rustCloudflare Worker through the /api/rust proxy.