Game MVP

Max&Jax

The South African pub dice game, with online rolls, real-table scorekeeping and persistent group history.

Illustrated five-dice Max&Jax turn and scoring flow
Gameplay illustration · replaceable artwork

Problem and user

Bring a familiar pub game online while keeping the real-table experience useful.

Friends playing a social dice game online or around a real table.

My role

Product builder and engineer

Five-dice gameplayOnline and offline modesHuman and AI players

Outcome and status

  • ✓Implemented the group, turn, dice and scoring MVP flow.
  • ✓Connected game history and leaderboard views.

Key product and technical decisions

  • Support physical dice through manual score entry.
  • Separate scoring rules from opponent behaviour.
  • Persist scorecards and group history.

Learning

The social experience depends on clear turn state and reliable rules as much as the dice interaction.

Next step

Table-test rules and shared-game reconnect behaviour.

Build notes and lessons

TL;DR

The South African pub dice game, with online rolls, real-table scorekeeping and persistent group history.

A social dice game, built for the way people actually play

Max&Jax is a mobile-first online version of the South African pub dice game. Players roll five dice, keep or release individual dice between throws, nominate a scoring category before the third throw and build a scorecard. The highest completed total wins.

The product is designed around a group rather than an isolated round. People can create a group, add human or AI players, start a game and return to its history and leaderboard. That gives a familiar social game continuity beyond a single evening.

Keep the table; add a digital scorecard

The game supports online, offline and mixed play. Online play supplies the dice interaction. Offline mode accepts scores from a real table. Mixed play connects the two. This is a deliberate product choice: the software can support the social experience without requiring everyone to abandon physical dice.

AI players provide another way to practise or complete a group. They are game opponents, with their behaviour separated from the scoring rules, rather than a conversational AI feature.

Making the rules dependable

Rules, scoring and AI behaviour are separated into dedicated modules. The Flask backend persists games, turns and scorecards in PostgreSQL; the SvelteKit frontend handles the mobile interaction. Centralised rule definitions make differences discovered during table testing easier to adjust and reason about.

What this work demonstrates

Max&Jax translates an existing social ritual into a product with explicit state, clear turn mechanics and persistent history. The engineering challenge is not just animating dice. It is keeping the scorecard, turn progression and different play modes understandable and consistent.

The next step is further table testing: verify the house rules, make nomination and scoring states unmistakable, and assess reconnect behaviour during shared games. This case study describes the implemented MVP flow, without claiming adoption or retention results.

Other product work

View all work →