WebGL “flying emoji/glyph” experiment built with Three.js, shipped as plain ES modules (no build step).
static/experiments/flying-stuff/index.html via the site (recommended), e.g. from npm run dev at /static/experiments/flying-stuff/.<script type="module">).importmap CDN in index.html).~ (Backquote key): toggle the debug panel.If prefers-reduced-motion: reduce is enabled:
index.html: page shell, HUD, debug panel markup, importmap for Three.js.main.js: bootstraps the app, sets up UI auto-hide, and shows a fallback UI on init/runtime errors.app.js: owns app lifecycle; creates THREE.Scene/Camera/Renderer, wires UI controls, and drives the RAF loop.flyers.js: simulation + object pool; spawns flyers, updates motion, and handles splats/theme transitions.utils.js: tiny helpers (clamp, reduced-motion watcher, etc).For more detail (architecture + API contracts), see ARCHITECTURE.md.