← The build log
PROCESS · AUG 19, 2026 · 4 MIN

Building Poo Head: a whole card game in one file

The Chappers team
Build notes
Building Poo Head: a whole card game in one file

Building a card game by talking to an AI

A few weeks ago I built a complete multiplayer card game — Poo Head, aka Sh$thead or Palace — and put it up here as Monte Dourado. The interesting part isn't the game. It's that I barely wrote a line of the code myself. I built it by directing an AI, and the experience changed how I think about what "building software" even means now.

Here's how it actually went.

The skill is the brief, not the typing

The old bottleneck was writing code. The new one is describing exactly what you want. Before the AI wrote anything, I had to pin the whole thing down in words: a 54-card deck plus two jokers, a full rules engine, peer-to-peer multiplayer with four-letter room codes, AI bots to fill empty seats, and — my one hard constraint — all of it in a single `index.html` file with no build step.

That last rule mattered. Poo Head has genuinely fiddly rules: twos reset the pile, sevens are transparent so you beat the card underneath, tens and jokers burn everything, four of a kind burns even when it's spread across separate turns. Every one of those is a place logic can quietly break. Getting a clean result meant spelling each rule out precisely. Vague instructions produced vague bugs — the clearer my brief, the better the code that came back.

Within a few minutes I had a working, playable, single-file game. That still feels slightly unreal.

The loop: I test, it fixes

From there it became a rhythm. I'd play, spot something wrong, describe it, and the AI would propose a fix — usually explaining the cause before touching anything, which I liked, because I could sanity-check the reasoning before saying go.

Some of what it did in that loop would have taken me a long, dull afternoon each. It ran hundreds of simulated games at every player count to prove cards were never lost or duplicated and that every game ended with exactly one loser. It inlined an entire networking library into the file when a CDN turned out to be blocked. It wired up a relay server for cross-network play. I'd have got there eventually; it got there in one message.

Where the AI couldn't help

This is the part that surprised me most, and the reason I don't think my job is going anywhere.

Every bug that actually mattered was invisible to the AI, because it lived in the real world. Hosting a game failed on a locked-down network with a `Peer is not defined` error — because that network blocked the library's CDN. The AI can't feel a corporate firewall. I had to hit it, report the exact error, and then it knew to inline the library instead.

My phone couldn't join a game on my laptop over mobile data. Same story — the AI can't hold a handset on a cellular network. I had to test it, notice Wi-Fi worked and cellular didn't, and hand that clue back so it could add the right fix.

And a layout where two panels ballooned to swallow the screen only looked wrong on my actual phone. From inside a sandbox, everything seemed fine.

The AI was brilliant at everything it could see. I was still essential for everything it couldn't.

Automated simulation caught the rules bugs. A human on a real phone, on a real network, caught everything else. That division of labour turned out to be the whole game.

Shipping it

My site runs on Next.js and Supabase, deployed through Vercel, so shipping was mostly a push. The one snag was my own auth layer bouncing the game to a login screen. The AI read the config, found the exact rule that was intercepting `.html` files, and told me the single line to change. Diagnosing that by hand would have cost me an hour of head-scratching.

What I took from it

Building with an AI didn't make me redundant — it moved where my effort goes. Less time typing, far more time writing clear specs and testing like a pedant. The old works on my machine gap became a works in the AI's sandbox gap, and closing it still takes a human who'll go and play the thing on a bad network with a real phone.

The distance from "wouldn't it be fun" to a real, shippable game is now astonishingly short. But somebody still has to know what good looks like, and somebody still has to go and check.

Go and have a game. Try not to be the Poo Head.