15 hours.
Zero breaks.
A Habbo. In Framer.
Multiplayer, pixel art, live chat, leaderboard, talking NPCs — all inside a single Framer code component. Built with Framer 3.0 + Claude (Sonnet 4.6) as my copilot, and it's live:
You can chat with Koen, Jorn, Adam and the rest of the Framer team (pixel-art editions) — and bump into other builders along the way. Under the hood: Supabase Realtime channels broadcasting position + chat at ~10 Hz, smoothed client-side. Cap at 40 simultaneous builders for now.
🛠 Bonus: I even built my own in-browser map editor + collision painter so I could iterate on the office layout without leaving the project. Two modes — Paint (drop any tile from the spritesheet anywhere) and Collision (paint walls / doors / triggers as red/green/yellow zones). It exports straight-to-TypeScript Rect[] arrays I can drop back into the Framer component.
Honestly I just wanted to see how far a single Framer code component could go.
Apparently: pretty far
Roast / feedback / questions welcome 🫡
15 hours.
Zero breaks.
A Habbo. In Framer.
Multiplayer, pixel art, live chat, leaderboard, talking NPCs — all inside a single Framer code component. Built with Framer 3.0 + Claude (Sonnet 4.6) as my copilot, and it's live:
You can chat with Koen, Jorn, Adam and the rest of the Framer team (pixel-art editions) — and bump into other builders along the way. Under the hood: Supabase Realtime channels broadcasting position + chat at ~10 Hz, smoothed client-side. Cap at 40 simultaneous builders for now.
🛠 Bonus: I even built my own in-browser map editor + collision painter so I could iterate on the office layout without leaving the project. Two modes — Paint (drop any tile from the spritesheet anywhere) and Collision (paint walls / doors / triggers as red/green/yellow zones). It exports straight-to-TypeScript Rect[] arrays I can drop back into the Framer component.
Honestly I just wanted to see how far a single Framer code component could go.
Apparently: pretty far
Roast / feedback / questions welcome 🫡