Catan Online
Multiplayer Catan in the browser
React · Node.js · Socket.IO · Express · Vite
Building a complete board game from scratch forces you to think about state in a way that CRUD apps never do. The hex grid geometry was the first challenge. Pointy-top hexagons have specific offset math that is easy to get slightly wrong. Keeping game state server-authoritative so players cannot cheat required careful thought about what information each client should receive and when. The game implements full Catan rules: resource production, trading, building, and the robber. The Web Audio dice sounds were a last-minute addition that made the whole thing feel more alive.
Dice Probability