My latest project is Domino Lakaz (opens in a new tab), a browser-based domino game with solo play, online rooms and a Mauritian touch.
The idea is easy to understand: take a seat at the table, play your tiles and work with your partner. Turning that into an application brings together several practical challenges, from enforcing the rules to keeping the board readable and the players in sync.
The table has a green felt surface, a wooden border and ivory-coloured tiles. Creole reactions such as “Bien joué partner!” and “Ki to fer la?!” add some personality. The computer players also have names, including Mamie Rose and Tonton Jean.
Those details give Domino Lakaz a sense of place. The experience includes the reactions around the table as well as the moves on it.
There are two ways to play.
For a quick game, choose Play vs AI. You take one seat, and computer players fill the other three. One is your partner, sitting opposite you, while the other two form the opposing team.
For a game with friends, create an online room and share its invite link or room code. A room supports up to four human players, with computer players filling any empty seats when the host starts. Seats are assigned randomly, so the teams are formed at the start of the game.
That makes it possible to begin without waiting for four people to be available.
The rules are worth explaining because domino games can use different conventions. This version uses 27 tiles, with the double blank removed.
| Part of the game | How it works in Domino Lakaz |
|---|---|
| Teams | Four seats, with partners sitting opposite each other. |
| The deal | Six tiles per player, with three tiles kept aside. |
| Opening a new game | The player holding 1–1 opens with that tile. |
| Playing | Match a tile to an open end of the chain. A player without a legal move passes. |
| Ending a round | A player empties their hand, or all four players pass consecutively. |
| Scoring | The remaining pips across all four hands are added to the losing team’s score. |
| Losing a game | The first team to reach 101 points or more loses. |
If the table becomes blocked, the player with the lowest remaining pip total determines the winning team. The score history lets players review completed rounds, see who won and follow how the totals accumulated.
One detail I like is that the aside tiles become visible to a player who has only one tile left. They are also revealed when the round ends.
The interface helps explain what is happening while you play. A turn indicator identifies the active player, and optional hints highlight playable tiles. When a tile can produce different outcomes at either end, the game lets you choose where to place it.
As the chain grows, its layout adjusts to the available table space. Sounds, tile animations and emotes provide feedback around each move.
The computer players are also a useful part of the project to explain. Although the interface labels them as AI, their decisions use programmed scoring rules. They do not rely on a trained machine learning model.
The move-selection logic considers factors such as the tile’s pip total, whether it is a double, the numbers available in the computer player’s own hand, and numbers that other players have previously passed on. It includes a small random contribution when comparing moves.
This gives the computer players a decision process that can be inspected and adjusted. It also provides a practical example of game AI built from heuristics.
Behind the interface, the game separates its rules from the code that draws the table and handles interaction. Solo mode uses the shared rules engine in the browser. Online mode uses a WebSocket connection to exchange actions and game updates with the room.
That separation matters because the same rules need to apply across both modes. The game must keep track of turns, legal moves, hands, scores and round transitions while presenting each player with the information they should see.
For my practical learning blog, Domino Lakaz represents another side of building applications: combining logic with an experience people can interact with immediately.
There is plenty to learn from how people actually use it, including whether the scoring is clear, whether the hints are helpful and how the table feels on different screens.
Try Domino Lakaz (opens in a new tab) — start with the computer players, or create a room and invite a few friends.




Join the conversation
Loading comments…