Singapore Mahjong — Play Free Online
A browser-based Singapore-variant Mahjong game with both single-player and multiplayer modes. Built on Phaser 3 + TypeScript, running on Cloudflare's edge. No download, no signup, free to play.
Game modes
- Single-player — three AI difficulty levels: Easy (heuristic), Medium (probabilistic), Hard (Monte Carlo Tree Search).
- Multiplayer with friends — create a private room, share the 6-character code, and play with up to three friends.
- Find Match — auto-matchmaking queue for four anonymous players.
Singapore Mahjong rules at a glance
- 148-tile set: 108 suit tiles (bamboo, circle, character × 9 ranks × 4 copies), 16 honor tiles (winds + dragons), 8 flowers + 8 seasons + 8 animals.
- Standard winning hand: four sets (chow/pong/kong) + a pair.
- Special hands: Seven Pairs, All Honors, All Terminals, Thirteen Wonders.
- Tai (fan) scoring: dragon pongs, seat wind, prevailing wind, self-draw, all-one-suit, all-concealed, animals — see settings for full breakdown.
How to play multiplayer with friends
- Click the Multiplayer button in the top-right HUD.
- Click Create Private Room. The server generates a unique 6-character code.
- Tap the code to copy it, then share with up to three friends.
- Click Enter Room — you'll be seated at the first available seat (East goes first).
- Your friends paste the code into Join with Code to take the remaining seats.
- If a player disconnects, the server holds their seat for 60 seconds, then auto-fills with a MediumBot to keep the game flowing.
Tech stack
Phaser 3 + TypeScript on Vite, Cloudflare Pages for the static bundle, Cloudflare Workers + Durable Objects for the authoritative multiplayer server, Cloudflare D1 for match history and ELO ranking. Open-source-friendly, Apache-2.0 licensed.