We vibe coded 10 classic games with Claude Code. They're live, they're free, and you can play them right now.
Why we built this
At WotAI, we build AI-powered tools for content and automation. We spend most of our time in Claude Code building production software – Echo for brand-first content, Flow for n8n workflow generation.
But sometimes you want to build something just because it's fun.
The vibe coding movement caught our attention. People on Reddit and Twitter were building surprisingly complete games by just describing what they wanted to an AI. We wanted to see how far we could push it with Claude Code specifically – not as a toy demo, but as polished, playable browser games with leaderboards.
So we rebuilt 10 arcade classics. From scratch. No game engine. No boilerplate. Just Claude Code and Next.js.
The games
All 10 are live at games.wotai.co:
| Game | What it is |
|---|---|
| Pac-Man | Navigate the maze, eat dots, avoid ghosts |
| Tetris | Stack blocks, clear lines, chase the high score |
| Space Invaders | Defend Earth from waves of descending aliens |
| Snake | The classic – eat, grow, don't hit yourself |
| Flappy Bird | Tap to flap, dodge pipes, try not to rage |
| Breakout | Bounce the ball, smash bricks |
| Asteroids | Vector-style space shooter |
| Frogger | Dodge traffic, ride logs, reach safety |
| Doodle Jump | Bounce between platforms, reach new heights |
| Sudoku | Logic puzzle with three difficulty levels |
Every game runs in the browser. No downloads, no signups, no ads. Just open the page and play.
How vibe coding actually works
If you haven't tried vibe coding yet, here's the short version: you describe what you want to build in plain English, and an AI coding assistant generates the code.
It sounds too simple. And honestly, for anything complex, it is – you still need to guide the AI, debug edge cases, and make architectural decisions. But for a well-defined project like "build Pac-Man as a browser game," it's remarkably effective.
Here's what a typical session looked like:
- Describe the game – "Build a Pac-Man clone using Next.js and HTML Canvas. Include ghost AI, dot collection, power pellets, and score tracking."
- Claude Code scaffolds the project – Game loop, rendering, collision detection, entity management. The basics come together fast.
- Iterate on details – "The ghost AI is too easy. Make them use A* pathfinding when chasing Pac-Man." or "Add a subtle glow effect to the power pellets."
- Polish – Leaderboard integration, responsive sizing, keyboard and touch controls.
The first 80% of each game came together fast. The last 20% – the polish that makes a game feel good to play – still required real iteration and taste. AI generates code, but game feel is still a human judgment call.
What surprised us
Canvas games are a sweet spot for vibe coding. HTML Canvas has a simple, well-documented API. Claude Code knows it well. Unlike complex UI frameworks where AI can generate broken abstractions, canvas games are mostly straightforward: draw things, move things, check collisions.
Ghost AI was the hardest part. Pac-Man's ghosts each have distinct personalities (Blinky chases directly, Pinky ambushes, Inky flanks, Clyde wanders). Getting those behaviors right took the most back-and-forth with Claude Code. Generic "chase the player" was easy – four distinct AI patterns required careful prompting.
Tetris rotation was surprisingly tricky. The SRS (Super Rotation System) that modern Tetris uses has wall kicks and specific rotation states. Claude Code nailed the basic rotation but needed guidance on wall kicks near board edges.
Touch controls matter. Most vibe coding demos are desktop-only. We made sure every game works on mobile with swipe and tap controls. This took as much iteration as the games themselves.
The tech stack
- Framework: Next.js (App Router)
- Rendering: HTML Canvas
- AI assistant: Claude Code
- Hosting: Vercel
- Leaderboards: Built-in, competitive
No game engine (Unity, Phaser, Godot). No WebGL. No complex build pipelines. Just a web framework and a canvas element.
That's the appeal of vibe coding for games – you skip the heavyweight tooling and get something playable fast. Is it production-grade AAA? No. Is it fun, polished, and shareable? Absolutely.
What this means for builders
Vibe coding isn't replacing game developers. But it is dramatically lowering the barrier to building interactive web experiences.
If you're a developer curious about Claude Code, building a game is one of the best ways to learn. The feedback loop is immediate – you describe a change, run the code, and see the result in your browser. No API integrations, no database migrations, no deployment pipelines. Just code and canvas.
If you're a non-developer who's always wanted to build a game, vibe coding makes that possible for the first time. Start with something simple – Snake or Breakout – and iterate from there.
Try them out
All 10 games are free at games.wotai.co. No account needed. Pick a game, set a high score, and see what vibe coding can build.
And if you're curious about what else we're building with AI:
- WotAI Flow – Generate validated n8n workflow JSON in minutes
- WotAI Echo – Brand-first content that actually sounds like you
We build tools for people who ship. Sometimes those tools are serious. Sometimes they're Pac-Man.
Production-Grade Claude Code in 5 Days
Set up Claude Code the right way – from someone who ships with it daily.
100% satisfaction guarantee. Full refund if you're not happy after the first session.
Related Posts

Claude Design vs Open Design: should you buy a design tool, or teach your CLI?
Anthropic shipped Claude Design April 17. Open Design shipped 11 days later as the OSS clone with 71 design systems and BYOK on any CLI. Honest comparison + decision framework.

Compound Engineering for Claude Code + AGENTS.md
I split my dev process from CLAUDE.md into AGENTS.md and let the Compound Engineering plugin run it. Here's the full pipeline, tier rules, and AGENTS.md template anchoring every PR.

Claude Code 2.1.121: Opus 4.7 finally uses its full 1M window
A quiet bug had Opus 4.7 autocompacting at 200K instead of 1M. 2.1.117 fixed it. Five releases, four memory leaks, and 150+ other changes since 2.1.116.
