← The build log
PROCESS · AUG 30, 2026 · 3 MIN

The board is the product

The Chappers team
Build notes
The board is the product

Every other little thing I've built for this site is something you play. Poo Head deals you a hand, runs the bots, keeps track of whose turn it is. This one doesn't deal anything. It's a cribbage board — the cards stay on the table, and the phone just does the counting.

That's the whole idea, and it took me a moment to trust it. Cribbage is a card game, so the instinct is to build the card game. But nobody actually wants their phone to play cribbage for them — half the fun is the pegging and the "fifteen-two, fifteen-four." What people lose is the physical board, or one of the little pegs, or track of whose crib it is. So the product isn't a game. It's a scoreboard that happens to know the rules.

Built from my phone

This is the first one I made almost entirely without sitting at a computer.

It started as a single line in a GitHub issue: Cribbage board. I've got Claude connected to my GitHub now, so I had it read that issue, break it into seven subtasks, and work each one as its own pull request. I'd review a PR on my phone between other things, merge it, and move to the next. The build happened in the gaps in my day rather than in one long sitting.

That changes the job in a subtle way.

When you're directing rather than typing, the bottleneck was never the code — it was deciding what the thing should be.

Splitting it into seven small, self-contained pieces meant I could make one clear decision at a time instead of holding the whole thing in my head.

The decisions that mattered

Three small calls shaped the entire feel of it, and none of them were technical.

How do you enter a score? A number pad felt obvious and was wrong. You're mid-hand — cards in one hand, phone in the other — you want to tap "+2" and be done. So it's quick buttons for the common scores, with a sheet that stretches to 29 for the once-in-a-lifetime perfect hand.

How real should the board look? I could have drawn actual pegging holes. I didn't. On a six-inch screen, a clean number track you can read at a glance beats a pretty board you have to squint at. Legibility won.

What happens when the browser closes? It saves. Nothing worse than a locked phone wiping a game you're three streets into, so every change writes to local storage and you get a "resume or start new" prompt when you come back.

What I actually did

I keep coming back to this because it's the part people find strange: I didn't write the code. My job was taste and judgement. I decided what "good" looked like, I caught the things that were off — a skunk line in the wrong place, a peg marker that didn't track the previous score — and I tested it on a real phone the way it'd actually be used, thumb on the screen, at a slightly awkward angle.

Then it got the same felt-and-brass look as the rest of the arcade and slotted in next to Monte Dourado, so the two games sit together.

It counts to 121, notches the skunk line at 91, calls a double-skunk when someone deserves it, and rotates the dealer for the rematch. It does the one job a cribbage board has. That was always the point.