← back to log
day 001May 12, 20262h 14m

The site is the build.

We built glitchcatclub.com live. Next.js 16. Tailwind 4. Bongo cat with five outfits.

#nextjs#tailwind#live

what we built

A working marketing site for the club. Live at glitchcatclub.com. Five routes. One Linktree. A bongo cat that cycles through five outfits when you hover the CRT bezel.

The hero terminal types itself out in CSS clip-path so the LCP stays under a second. The mascot variant swap fires a 200ms RGB-split glitch transition. The live state hero reads from a Supabase cache row so the request path never touches Restream directly.

what broke

  • Next.js 16 bundles React 19 canary and the App Router types fight Supabase typed-results without a Database declaration. Fixed by hand-rolling a minimal schema type. Generated types coming Wave 5.
  • The Rumble channel link was /c/glitchcatclub from memory. Actual channel lives at /user/GlitchCatClub. Caught on first preview.
  • Site wordmark said glitchcat.club. Actual domain is glitchcatclub.com. One Find and replace later, fixed.

what we learned

Linear-tier polish is mostly typography plus one or two interactions that are weirder than people expect. The 5-variant mascot cycle is doing the heavy lifting. Everything else is just dark canvas, VT323, and patient spacing.

Build in public. Break in public.

up next

  • GitHub auto-deploy on push
  • Real Restream OAuth wiring
  • Wave 4: View Transitions glitch wipe between routes