How this was built · 02

The seams, exposed.

Every dot, every reflection, every draw call. This page exists because design without engineering is just a picture. Toggle the wireframe to see the geometry. Watch the counters move. Nothing is hidden.

FPS00CALLS0TRIS0GEO0

Stack

  • Next.js 16 + React 19 (App Router).
  • Three.js for all 3D — single canvas per scene, geometries disposed on unmount.
  • GSAP ScrollTrigger for scrubbed timelines; Lenis for smooth scroll.
  • Synthesised UI sound via the Web Audio API — no audio assets.
  • CSS Modules only. No utility classes inside this section.
  • Dot grid uses dynamic position attributes, displaced by cursor + FFT bins.