A shared graveyard for side projects nobody finished.

Everyone who makes things has a folder of abandoned work. Side Project Graveyard takes that private, slightly embarrassing pile and makes it public, communal and funny. Bury a project and it becomes a headstone in a 3D cemetery you can walk through with strangers.
Award:
Global winner, Convex Challenge
Built for:
Burning Token 2026 (NERDCONF)
Stack:
React 19 · React Three Fiber · Convex

7

Days to ship

27

Causes of death

25

Buried projects (so far)

~15M

Tokens burned (est.)

Dead on day one.

I started the hackathon building something else: a “Rage Click” style browser game that got angrier the more you clicked it. After some research, I realized clicker games were already oversaturated. I killed it the same day. RIP.

So I had a dead project on day one of a seven-day build. It reminded me of all the other ideas I thought were brilliant, only to find out 20 versions already existed, or the idea just wasn’t that good. That ended up being the idea.

Side Project Graveyard is a cemetery for abandoned work. You bury a project, give it a name, the years it lived, and how it died. It becomes a headstone in a shared world anyone can walk into.

There are 27 causes of death across six categories, from “Scope creep was too real” to “Vibe coded too close to the sun.” Other visitors are there with you, live, as ghosts. No sign-up. No install. Open the link and you’re standing in a graveyard.

Seven days, and every decision had to survive the deadline.

Four calls that made the difference — each one chosen because it was the version that could actually ship inside the time I had.

Ghosts that move without a game server.

Multiplayer usually means streaming positions — every client writing its coordinates many times a second. That is a lot of database writes for a hackathon budget. Instead, a click stores one destination and one timestamp. Every client replays the same walk from the same starting moment, so everyone sees smooth movement while the database only records where someone decided to go.

Two people can’t be buried in the same plot.

A grave’s plot number is claimed inside a single database transaction, and its position in the world is derived from that number. Two people burying at the same instant physically cannot land on the same spot — not because of retry logic, but because the plot is the source of truth for the position.

A graveyard that grows itself.

The fence, the treeline, the lanterns, the mausoleum and the walkable area are all derived from how many graves exist. The yard expands as it fills instead of being a fixed field that eventually runs out of room.

Candles go out after 24 hours, so how lit the graveyard looks is a live measure of whether anyone still visits. That one wasn’t a technical decision — it just felt right, and it made the place feel alive in a way nothing else did.

Recoloring without repainting.

Every model shares one color texture. Editing that texture would repaint the whole world at once, so individual models are recolored by pointing their UVs at a different swatch on the same sheet. One texture, many color schemes, no extra downloads.

Built with Claude Code as a pair programmer. The 3D models are the Graveyard Kit by Kenney, used under CC0; scene composition, lighting, UI, type and the ghost are mine.

Three things I took away.

Seven days is short enough that every choice shows up in the result. These are the ones I’d carry into the next build.

Killing the first idea was the highest-leverage hour of the build.

I lost a day and got the whole project back. I’d have shipped a mediocre clicker otherwise. The cost of abandoning something is almost always lower than it feels on the day.

AI moved the bottleneck, it didn’t remove it.

Working with Claude Code, writing the code stopped being the slow part. What became slow was knowing what to build, deciding what to cut, and judging when something felt right. Those didn’t get easier — they got more important, because there was more of everything to judge.

Constraints made the design.

No sign-up, no install, no game server, no CDN. Every one of those started as a limit and ended up as a feature. The thing that makes it fun — open a link, you’re just there, with other people — exists because I couldn’t afford anything heavier.

Go and bury something.

The graveyard is live and open to anyone. No sign-up, no install — open the link and you’re standing in it.

Visit the graveyard
Burning Token winners →
https://www.burningtoken.dev/projects

Built September 2026 for Burning Token, a NERDCONF hackathon. Entered in the Fun Build and Multiplayer challenges, and named a global winner in the Convex Challenge.

Thank you!

Thank you for taking the time to learn more about my work.

Up Next