Four instruments,
no videos.
Every demo here runs on your hardware and prints numbers it measured itself: a benchmark over your own CPU, an election between five real Web Workers, a model downloaded into your GPU, a scene generated from code. Reload and the figures change, because they were measured rather than drawn.
- Qwen2.5 0.5B and 1.5B, SmolLM2 360M
- Streaming tokens, measured tok/s
- Prompts never leave the tab
- Median of 9/25/99 repetitions
- Hand-emitted wasm, no toolchain
- Carries a dated correction of its own earlier claim
worker.terminate() on the leader; the survivors notice and elect again, and the recovery is decomposed into detection, campaign and replication.
- Measured with performance.mark(), not animated
- Below quorum it refuses to elect
- 500 fault schedules gated in CI
- Hundreds of flat-shaded triangles, generated in code
- Wingbeat slider, orbit, wireframe
- Nothing to download but the library
These are the demos' own constants, not benchmark results — the numbers that matter are printed on each page, by your machine.
Every page states its own limits.
The WASM page opens with a dated correction of what that URL used to claim. The Raft page refuses to elect below quorum and says so in the banner. The chat tells you when WebGPU is missing instead of falling back to something slower and calling it the same thing. A demo that cannot fail is not a demo.
- Stack
- WebGPU · WASM · Web Workers · Three.js
- Server cost
- static files only
- Telemetry
- self-hosted Umami, no cookies
- Source
- github.com/gaidar0yegor
The old fraud-benchmark URL was replaced in August 2026: /lab/rust-wasm-fraud/ → 301 → /lab/wasm-vs-js/. The write-up at /blog/rust-wasm-browser-fraud/ carries its own correction.