Mahjong Hand
Photograph your American Mah Jongg hand and card, and get instant, rules-accurate recommendations on what to keep, discard, and chase.
Keep up at the table
American Mah Jongg hands are scored against a card of dozens of patterns that changes every year — memorizing it, and spotting which hands your tiles are actually close to, is the hardest part for a newer player sitting across from people who've played for decades.
Mahjong Hand takes a photo of your hand, reads the tiles, and checks them against your own card to show which hands you're closest to and which tile to discard — so you can play at the table's pace instead of falling behind.
How It Works
- 1Photograph your card once — a vision model transcribes every hand pattern into an editable list, since the card's exact wording is copyrighted and changes yearly, nothing is hardcoded.
- 2At the table, photograph your hand of tiles. The same vision model reads them off, and you can correct any misread tile before analyzing.
- 3A deterministic matching engine — not the LLM — compares your tiles against every saved pattern and ranks your closest hands with a suggested discard.
Screenshots

Take a photo of your hand, or add tiles by hand

Every extracted tile is a correctable chip before analyzing

Ranked closest hands with a suggested discard and what's still needed

Manage multiple cards and their saved hand patterns
Key Features
Your Own Card
Every hand pattern comes from a photo of your own card, reviewed and editable — nothing about a copyrighted, yearly-changing card is hardcoded.
Photo Tile Recognition
Take a picture of your hand and let a vision model identify every tile — suits, numbers, winds, dragons, flowers, and jokers.
Deterministic Matching
A Go engine — not the LLM — enumerates every valid suit/number assignment a pattern allows and finds the true closest match, including joker rules like 'never in a pair.'
Discard Recommendations
See which tile to discard and why, ranked by how close it keeps you to your best hands.
Editable Everything
Vision models make mistakes. Every extracted tile and every extracted card pattern is a correctable draft before it's used or saved.
Mobile-First, Dark Mode
Built as a phone-friendly website — no app install — for quick checks between turns at the table.
Perfect For
Newer Players
Keep pace with experienced players without having the whole card memorized
Casual Games
A quick reference between turns, without slowing down the table
Card Season
Set up once when the new card comes out each year, then reuse it all season
Technical Details
- —Go backend with SQLite storage for your saved card and hand history
- —React + TypeScript + Tailwind frontend, mobile-first and dark by default
- —Vision LLM used only for photo transcription — never for strategy
- —A deterministic matching engine enumerates pattern variables (any suit, any matching number, runs) to find true closest matches
Have a project like this one?
We'd be glad to talk through your goals, your constraints, and whether we're the right team for the work.
