CASE STUDY · 2026—PRESENT

Spreadsheet speed, lasting mahjong records.

Tenn is an iOS app for recording three- and four-player mahjong results at the table and accumulating them as player histories. It puts input speed first, then connects the data to statistics, search, sharing, and backup.

Period

2026 — Present
Personal product

Role

Product Design
iOS Development · Brand

Stack

SwiftUI, SwiftData,
Charts

Status

Preparing for
App Store release

A table you can use without thinking during play.

The starting point was not a rich form, but the immediacy of typing into a spreadsheet. A four-player sheet fits without horizontal scrolling, and the final score in each game is calculated automatically so the row totals zero. Minus and clear shortcuts sit directly above the keyboard.

When five or six people rotate through a session, an individual cell can be disabled for the player sitting out. Rankings are calculated only among the three or four active players, so impossible fifth- or sixth-place results never enter the statistics.

Tenn result-entry screen showing four players, game scores, chips, totals, and settlement values.
Fig 01 — Edit the sheet directly. Scores, chips, totals, and settlement stay on one screen.
Tenn result sheet with players rotating between games and inactive cells disabled.
Fig 02 — Keep the same sheet when players rotate; disable only the person sitting out.

Keep the shape of play, not only the final total.

Each player gets games played, average placement, average score, win rate, top-two rate, and cumulative chips. Three- and four-player formats remain separate because they are not comparable. Cumulative results sit alongside a per-game chart limited to the latest 20 games, separating long-term direction from recent volatility.

Tenn player list and detailed record showing games, average placement, average score, and placement distribution.
Fig 03 — Scan the overview, then open a player to see the full placement distribution.
Tenn player detail showing cumulative results and the latest per-game score trend charts.
Fig 04 — Separate cumulative progress from the zigzag of the latest 20 games.

Features

  • Separate three- and four-player records
  • Show the latest 20 games in the per-game trend
  • Automatically calculate each game and chip row to total zero

Do not trap manually entered data inside the app.

Past sheets can be filtered by player and co-player. Result sheets and player statistics can be shared as images, while every player and game can be exported and re-imported as a JSON backup. Data stays local by default, but remains portable and recoverable by the person who created it.

Tenn records screen filtering past sessions by player and co-player.
Fig 05 — Return to a session by remembering who was at the table.

Make a small utility trustworthy enough to keep using.

I designed and built the UI, data model, scoring logic, brand, App Store screenshots, backup flow, and privacy and support surfaces as one system. AI worked as a development partner, while product decisions stayed grounded in mahjong rules and real score-entry behavior — turning a personal tool into a product ready for distribution.