← writing

Building this playground

Human

This site is a hybrid playground — part portfolio, part sandbox. The landing and writing are content-first, but the lab is where the fun is: each experiment is its own little world.

Per-experiment canvases

Every 3D experiment owns its own <Canvas>, mounted only while you're on its route. Navigate away and it unmounts cleanly — so the WebGL context count never climbs past one, and three.js never touches the landing bundle.

Registry-driven

Adding an experiment is one entry in a typed registry. That single manifest drives both the gallery cards and the routes. Drop a folder, add a line, done.