Skip to content
All projects

Case study 01Web · Realtime · Multiplayer

Puzzle Arena

Jigsaw puzzles, solved together in real time.

A free, real-time multiplayer jigsaw platform. Friends share one table, see each other’s cursors, talk over camera and mic, and turn their own photos into puzzles in seconds.

Visit sitepuzzlearena.net(opens in a new tab)
Role
Design and engineering — product, realtime, web
Platform
Web — desktop & mobile browsers
Stack
Next.js, React, WebRTC, Realtime sync, Image processing
puzzlearena.net / board

01Overview

Puzzle Arena takes one of the oldest social games on the table and puts it online without losing what makes it social. Players join the same room, move pieces on one shared board, see where everyone is working, and talk face to face while they solve.

02Problem

Most online jigsaws are solitary: one player, one board, no sense of anyone else. Solving together — the part people actually enjoy — usually means screen-sharing, where only one person can play.

03Goals

  1. G1Let several people move pieces on the same board at the same time
  2. G2Make other players feel present — cursors, voice, video
  3. G3Turn a personal photo into a playable puzzle in seconds
  4. G4Keep it free and instant: no install, join with a link

04My role

Design and engineering — product, realtime, web.

  • Product and interface design
  • Realtime room and board synchronisation
  • Camera and microphone integration with WebRTC
  • Puzzle generation from uploaded photos
  • Library, profiles, levels and achievements

05Technology

Web
Next.js / React
Realtime
Room & board sync / Live cursors
Media
WebRTC / Camera & microphone
Content
Photo → puzzle generation / Puzzle library

06Architecture

The board is shared state: every move is small and frequent, has to feel instant for the player making it, and has to stay consistent for everyone else in the room.

  1. 01

    Room

    Quick play, invite codes or links; public and private rooms

  2. 02

    Board sync

    Piece moves and snaps broadcast to everyone in the room

  3. 03

    Presence

    Live cursors show where each player is working

  4. 04

    Media

    WebRTC camera and microphone between players

  5. 05

    Generator

    An uploaded photo is cut into 6–500 interlocking pieces

07Challenges & solutions

C1Two hands, one piece

When two players grab the same piece at once, naive syncing makes it jump between them or end up in two places.

When two players grab the same piece at once, naive syncing makes it jump between them or end up in two places.

A piece belongs to whoever is dragging it; others see it as taken, and the board settles on a single position when it’s released.

A piece belongs to whoever is dragging it; others see it as taken, and the board settles on a single position when it’s released.

C2Instant feel over the network

Waiting for a round trip before a piece moves makes dragging feel sticky and unresponsive.

Waiting for a round trip before a piece moves makes dragging feel sticky and unresponsive.

Moves render locally first and stream to the other players continuously, so the person dragging never waits on the network.

Moves render locally first and stream to the other players continuously, so the person dragging never waits on the network.

C3Puzzles from any photo

Photos arrive in every size and aspect ratio, yet pieces must interlock cleanly at any count from 6 to 500.

Photos arrive in every size and aspect ratio, yet pieces must interlock cleanly at any count from 6 to 500.

The generator fits the grid to the image’s proportions and cuts interlocking edges per piece, so any photo becomes a fair, solvable puzzle.

The generator fits the grid to the image’s proportions and cuts interlocking edges per piece, so any photo becomes a fair, solvable puzzle.

08Screens

  • puzzlearena.net / board
    a.Shared board — live cursors, voice and video
  • puzzlearena.net / lobby
    Puzzle Arena home screen with quick play, room options and popular puzzles
    b.Lobby — quick play, rooms, the library and your own puzzles

09Results

  • Live and free at puzzlearena.net
  • Multiplayer, single-player and custom puzzles in one product
  • A library across 11 categories, with levels, achievements and friends
Visit sitepuzzlearena.net(opens in a new tab)

10Lessons learned

“Presence is the feature — cursors and voice matter more than graphics.”

“In a realtime interface, the local player must never wait for the network.”

“The best onboarding is a link that drops you straight into a room.”