Back to Projects

Digital Board Games

Apr 2026 - Present

Deployment

Building a Scalable, WebRTC-Powered Platform for Jackbox-Style Multiplayer Games

Digital Board Game Engine & Platform

The Vision: A "Roblox for board games" — a digital engine where one host device runs the game logic, and players join via their phones in a Jackbox-style room system.

Instead of rendering a full board on every client, the engine sends structured state-change messages (like JSON objects). Clients interpret these updates (e.g., "cardDrawn", "turnChanged") and update their local UI, creating a seamless, no-setup game night experience.

### The Development Journey

1. The Prototype & The Crash The project began as a WebSocket server paired with a Jackbox-style room code system, initially testing a digital version of Codenames. It worked perfectly in isolated testing, but when brought to a game night with 8 players, the network collapsed. Players dropped out, and the host screen failed to keep up.

2. Building Network Resilience That initial failure prompted a deep dive into network stability. I rebuilt the connection architecture to handle real-world conditions, introducing:

  • Pinging and heartbeat mechanics to monitor connection health.

  • Disconnection and rehydration protocols so players could seamlessly rejoin without losing their state.

  • Cross-device compatibility ensuring stable connections across iOS, Android, tablets, laptops, and cellular data.

3. Standardizing with an SDK As the network stabilized, I expanded the library with games like Secret Hitler and Hues and Cues. Playtesting revealed UI bottlenecks and the need for a standardized way to build and connect games. I created a dedicated Board Game SDK to define the game engine object, allowed methods, and state management. This modularized the system, drastically sped up new game creation, and allowed me to use AI to generate initial game drafts that strictly adhered to the SDK's architecture.

4. The Developer Portal & Versioning Publishing via GitHub Actions wasn't scalable for outside developers. I built a Developer Portal that introduced a board game versioning system. This allows developers to iterate, test, and push game files to a CDN without interrupting active users.

The WebRTC Pivot (Current Architecture)

As the platform's user base grew, hosting game logic on a centralized backend became a massive scaling and cost bottleneck.

To solve this, I pivoted the core architecture to WebRTC. Now, a Web Worker runs the game data directly through the host's web browser.

  • Infinite Scalability: Because the processing is offloaded to the host's browser, the platform can scale to thousands of simultaneous users overnight with zero backend strain.

  • Secure & Authoritative: The host acts as the server authority. Clients cannot cheat by modifying rules; they only receive the private updates routed specifically to them.

### Next Steps & Future Roadmap

With the core engine and WebRTC architecture running smoothly, the next phase of the project is entirely focused on Developer Experience (DX):

  • Writing comprehensive documentation for the SDK.

  • Improving developer onboarding.

  • Refining the UI/UX for managing published games on the platform.