Skip to content
Andrew Voirol
WorkLogAboutContact
HomeWorkLog

AboutContact

✦ Just one prompt away from figuring it all out.

Friday, August 7, 2026

Killed the Next.js version and shipped 370 lines of pure scroll

React Three FiberShipping

The Next.js version was 1,058 lines of page.tsx with layered PNGs, GSAP, and a scroll system that fought itself. I'd been wrestling with it across six sessions, but the real problem wasn't the code — it was the architecture. Next.js SSR and React Three Fiber's scroll controls don't love each other. So I started fresh: Vite + React 19, one App.tsx, volumetric clouds from drei's raymarched <Cloud> components instead of PNG layers, 800 Gemini-colored star particles with per-frame CPU physics, and a scroll-driven camera dive from bright sky to dusk. 370 lines. One file. No API keys, no backend, no server-side rendering pretending to be a 3D experience. Changed the golden "9" from white to sun-colored because white-on-white clouds was invisible. Generated a new Shoreline Amphitheatre image to replace the placeholder. Pushed to GitHub the same night.

← Previous

26 minutes from 'let's see what this does' to pushed on GitHub

Next →

The portfolio triage dashboard nobody asked for


Andrew Voirol

Builder, hacker, shipper. Currently leaving localhost.

Navigate

WorkBuilder’s LogAboutContactRSS Feed

Connect

X / TwitterGitHubLinkedIn

© 2026 Andrew Voirol·Back to top ↑
✦Just one prompt away from figuring it all out.