Drift
5,500 lines compressed into 164. One file, one input, one more try.
An orb, a corridor, a finger
On the right, it’s not a trailer. It’s the game, in full, running as-is. A single input — a tap, anywhere — lifts the orb; releasing drops it. Pillars scroll past. You try again.
Where it comes from
The project began as a test. Replit had rolled out a Game option, and I wanted to try it by tinkering with a 3D Flappy Bird. I ended up with something cool, then handed the repo to Claude Code, which rebuilt it properly — clean Three.js, a dedicated game engine, an AudioManager with tests, five biomes, four hazards, a BossManager, a PowerUpManager, ten Vitest suites. A small game wearing a large suit.
At some point, I asked myself what was actually interesting about this project. The only answer that held up was: see how far I can push Claude Code on code efficiency. So we started over. Simplified graphics, one file, as compact as possible.
The rename Birdie → Drift was settled in the same conversation. We brainstormed names; I don’t remember the ones we passed on. Drift captures what remains better: an orb floating, not a bird struggling.
The number
14 March commit: 59 files deleted, about 5,500 lines of code cut in one go — the whole Three.js engine, the biomes, the hazards, the Vitest suites, the Vite build, TypeScript. Next commit, same day: a single HTML file, 164 lines, WebGL2 + GLSL + Web Audio, zero dependencies, zero build step.
Ratio: around 33× compression. The constraint wasn’t a number — as tight as possible — and we iterated with Claude until Claude itself judged that nothing more could be saved.
What remains
I don’t regret any of the cuts. Not the biomes, not the laser gates, not the tests. The game is much better this way. The play experience didn’t merely survive the compression; it clarified by passing through it. What you see on the right has the same density as its code: black, minimal, mildly hypnotic, and “one more try” after every collision.
P.S.
This isn’t a general lesson about simplification. I have no intention of turning it into a method. It’s a particular observation, about a small game with no ambition: Claude Code, when asked explicitly to be as short as possible and left to judge the floor, knows how to be. That kind of knowledge only confirms itself by doing, on a project you have the right to break. Drift was that project.
Click or tap to play.