george larson

work

Case study · Fracture

Fracture: modernizing a fourteen-year-old demo

The problem

Mozilla's 2012 BrowserQuest was a beautiful proof that a browser could run a live multiplayer game. Then it sat. A modernization could go two ways: a shallow reskin that demos well and rots, or a real revival that someone could actually play and you could actually extend.

The framing

Legacy modernization is judged on what holds up after the demo. A rewrite that loses the original's working multiplayer core is a regression dressed as progress. The goal was a running game on a current stack with a test wall thick enough to change things without fear, not a screenshot.

The fix

Rebuilt on TypeScript, Node, React, SQLite, and Socket.IO. Zone-based combat, a party system, rifts as endgame dungeons, leaderboards, player persistence. AI NPCs with contextual dialogue and a narrator system, behind a circuit breaker that keeps the game running if the AI provider drops. A full observability stack and a production deployment behind nginx and SSL. 215 TypeScript source files, 65 test files.

The outcome

Playable right now at fracture.georgelarson.me, with 3,161 passing tests behind it. A fourteen-year-old demo that runs as a live game today, and a codebase you can keep building on.

play it · source


Hiring, or stuck on something? Let's talk.