BilliardScoreBoard

Prototype · Android · Tablet

A billiards scoreboard built to competition rules.

One tablet on the wall beside the table. Tap to score carom or pool, the shot clock runs itself, every shot is recorded, replayable and streamable — no network, no accounts.

  • 7 disciplines
  • 100% offline
  • Record & replay
  • Live streaming
  • 5 languages

Products

Two products, one design language

One codebase, one amber-on-charcoal palette, two settings: the pool table in an office and the professional billiards hall.

Running · complete prototype

Office Board

A wall scoreboard for the office pool table

  • Five screens: Home, Match setup, Carom board, Pool board, History
  • Seven disciplines with a full competition layer
  • Segmented recording, replay, live streaming, QR clip download
  • No network, no accounts, no sync — plug it in and play
Designed · foundation built

Venue system

Control · Display · Combined for billiards halls

  • Three device roles: Control for the referee, Display for spectators, Combined in kiosk mode
  • Event-sourced match state — crash recovery, audit trail and undo from one mechanism
  • Four rule engines: 3-cushion carom, libre, 9-ball, 10-ball
  • Sync-ready with an outbox and UUIDs from day one

Office Board

Everything the Office Board does

Designed for a finger at arm's length: 45dp controls and Anton numerals you can read from the far end of the table.

1-cushion3-cushionLibre9-ball10-ball15-ball15 free
01Scoring

Seven disciplines, two boards

Three carom rule sets and four pool rule sets on two dedicated boards: the carom board counts innings and series, the pool board counts racks and race-to.

02Competition

A full competition layer

A three-zone green–amber–red shot clock, extensions per player, pre-match warm-up, handicaps and break selection. Quick mode switches all of it off and just keeps score.

03Action log

Undo is a peer of scoring

Each match is one append-only action log. Undo deletes the last row and refolds; innings, series, high run, average and the play-by-play all fall out of that fold — nothing is tracked separately to drift.

04Video

Segmented recording

CameraX records continuously in short segments with a rolling 45-minute buffer, so storage never fills and one bad segment never ruins a match.

05Replay

Replay and highlight jump

The replay screen stitches segments into one timeline and marks every scoring shot, so you jump straight to the high run or the disputed foul.

06Live

Live streaming to YouTube and Facebook

The camera is shared between recording and the encoder, a broadcast-style score bar is drawn over the frame, and accounts or a custom RTMP target are connected right in match setup.

07Share

Clip download via QR code

The tablet runs a tiny web server on the local network. Scan the QR, pick a range, and the clip is cut from the segments and downloaded straight to your phone.

08Camera

Camera configuration

Front, back, USB webcam or RTSP network camera; live preview with latency, resolution, frame rate, test capture and a saved default.

09History

History and end-of-match card

Every match is stored locally with a summary card, carom/pool filters, multi-select delete and a backup export to Downloads.

10vi · en · ko · es · zh

Five languages

Vietnamese is the source; English, Korean, Spanish and Chinese are fully translated and key-parity tested — switch inside the app, no system change needed.

11Privacy

Kiosk, offline, no accounts

Fixed landscape, screen kept awake, and no network layer beyond streaming and clip sharing. Nothing to log in to, nothing to leak.

12Accessibility

Contrast under test

Every text colour clears 4.5:1 on every ground; a contrast-ratio test suite runs in CI so nobody makes the board hard to read by accident.

Screens

The screens

Redrawn in CSS with the app's exact palette and typefaces.

Match setupDiscipline, mode, timing, players and a read-back line before you start.
ReplaySegment timeline, highlights, and the QR clip-sharing footer.
ConfigurationCamera sources, live preview, streaming accounts and language.

Venue system

The venue system

A larger programme decomposed into nine sub-projects, built in order on the same foundation.

Status: design approved; the foundation (modules, Hilt graph, design system, test harness) is complete. The items below describe the design, not shipped features.

01Roles

Three device roles

Control for the referee, a read-only Display for the spectator TV, and Combined — a Control instance rendering the board layout in kiosk mode. Locking to kiosk switches role, not permissions.

02Events

Event-sourced match state

Every scoring and clock action is an immutable event. Crash recovery, the audit trail, undo and the playback score overlay are one mechanism, not four.

03Rules

Four pure-Kotlin rule engines

3-cushion carom, libre, 9-ball and 10-ball behind one interface; a ruleset snapshot is frozen at match start so changing configuration never alters a match already played.

04Video

Capture and playback with score overlay

Segmented recording in a foreground service with a storage guard; Media3 playback maps video time to events to jump to any shot.

05Display

TV board over the LAN

The Display app receives state in real time over the local network, reconnects on its own, and never exposes a score-correction control.

06Sync

Sync-ready

UUIDs on every record and an outbox table written in the same transaction from day one — the sync engine only has to drain the queue once a server exists.

FAQ

FAQ

Common questions about this digital billiards scoreboard.

Does the app need an Internet connection?

No. The Office Board is fully offline: scoring, recording, replay and history all live on the tablet. Only live streaming and QR clip download use a network, and clip download only needs local Wi‑Fi.

Which billiards disciplines does the scoreboard support?

1-cushion carom, 3-cushion carom, libre, 9-ball, 10-ball, 15-ball and 15-ball free pool. The venue system is designed for 3-cushion carom, libre, 9-ball and 10-ball.

How does the shot clock work?

In Competition mode each shot has a configurable countdown, each player has a number of extensions, and there is a pre-match warm-up. The clock bar turns green, amber and red so the whole table can see it.

Can I replay the last shot?

Yes. Video is recorded continuously in segments with a 45-minute buffer. The replay screen marks every scoring shot for direct jumps, and a clip can be cut and downloaded to a phone via QR code.

Where can it live stream?

YouTube, Facebook pages, or any custom RTMP server. A broadcast-style score bar is drawn over the frame so viewers always see the score.

What devices does it run on?

Android 11+ tablets (minSdk 30), fixed landscape, suited to wall mounting beside the table. Built-in cameras, USB webcams or RTSP network cameras all work.

Which languages does the app support?

Vietnamese, English, Korean, Spanish and Chinese; switch directly in the Configuration screen without changing the system language.