Technology Lab

RunnableEngineering Cases

All eight cases below are written in Rust and compiled to WebAssembly — zero runtime dependencies, no framework, no build toolchain in the browser. Game rules and numerical computation live entirely on the Rust side; JavaScript only loads the modules, paints the canvas and forwards input, so every case is genuinely playable right here on the page.

Rust → WebAssembly · Zero Dependency

Snake

Grid logic · Rust + WASM 8 cases · 3 sections
Loading WebAssembly…
Runtime metrics
Best score 0
Overview

Eight cases, three sections

Games validate interaction and state machines, scientific visualization validates algorithms and numerical accuracy, physics simulation validates integrators and stability criteria — together they cover the three most common classes of engineering risk in delivery.

Live

Engineering highlights

Zero-dependency delivery

Hand-written extern C exports with no wasm-bindgen: the artifact is the bare wasm, with no generated JS glue step.

Command buffer protocol

Rust writes drawing commands into linear memory; the front end reads them sequentially with getUint32 — zero copy, no string parsing.

Tests as guardrails

Geometry asserts areas, simulation asserts energy drift: math and physics errors surface in unit tests rather than on a customer site.

Single-source bilingual

Page copy and case metadata are injected by the build script, and both language versions share one renderer, so the two can never drift apart.