§ 06Build
I build sites that open like films.
This site is my own archive: 279 works, 13 records and 39 playlists. I designed it, engineered it and shipped it alone. Here is what runs under the picture, and what I can build for you.
§ 06.1Case
The title card

- The problem
- A landing page demands attention before it has earned it.
- What I built
- Ignition: my T monogram as 10–20k WebGL2 points, eroding upward into ultramarine ash. Press and hold, and they come home, heating red to white over a synthesized drone. Let go, and it ignites.No libraries, no audio files. The charge runs on the wall clock, so a slow GPU still fills in 2.1 seconds.
§ 06.2Case
The hero film

- The problem
- Art on the web sits there like a JPEG.
- What I built
- A WebGL2 film over the real image. The cursor is a lit match above the print, glowing in the work’s own color. Between works a ragged heat front chars the frame and develops the next piece.The art is a crisp picture from the first paint; the film is drawn over it, never instead of it.
§ 06.3Case
The cut
- The problem
- Page loads break the spell.
- What I built
- Every route change is a dissolve: the old frame and the new one cross on one curve, the film grain carried through, choreographed with the View Transitions API. Back and Forward get theirs too.Each history entry remembers its own scroll. Back lands exactly where you left, not where the browser guesses.
§ 06.4Case
The rooms

- The problem
- 279 works is a lot to scroll.
- What I built
- Theater, a full-screen screening cut like a film. Ignite, a daily game: burn as little of a hidden work as you can, then name it. The Dial: 39 Spotify playlists on an FM band, static between stations, each lit by a work.Theater ships as a shell; the screening loads only when it’s opened.
§ 06.5Case
The engine room
- The problem
- Cinematic sites tend to be heavy and fragile.
- What I built
- Next.js on Cloudflare Workers. The worker streams audio with HTTP ranges so records seek at once, guards every deploy against version skew, and keeps first-party analytics with no cookies and no stored IPs.Each AVIF ships only where it beats its WebP by 10% at matched SSIM.
§ 06.6Case
Proof, not adjectives
- The problem
- “Fast” and “accessible” are easy words.
- What I built
- A Playwright suite checks the live site after every ship. Every effect has a reduced-motion and a no-WebGL version; llms.txt lets AI assistants read the whole archive.Measured in October on a 239 Hz display: every route idles at a 4.2 ms median frame.
§ 06.7For you
What I build for others.
Cinematic brand sites
For brands that would rather be felt than scrolled past.
Music and artist launches
Album rollouts, listening rooms, release-day pages.
WebGL moments
One title card, hero or product reveal, dropped into the site you already have.
Games and campaigns
Daily games, shareable results, reasons to come back tomorrow.
Performance rescue
Your beautiful, stuttering site, made smooth: frame budgets, image pipelines, idle CPU near zero.
§ 06.8How it works
Three shapes, one call.
Sprint
One WebGL moment or launch page, designed with you and shipped live.
From $5,000 · two weeks
Build
A full cinematic site, from concept through deploy, with QA and handover.
From $15,000 · six weeks
Studios
I join your team on your brief, by the sprint or at a day rate.
We start with a thirty-minute call. You get a fixed-scope quote within two days and a preview link every week. You own the code.