Vibe coding is a term popularized by Andrej Karpathy and set in motion by Pieter Levels who recently launched a multi player flight simulator game created with a combination of Cursor + Claude and some prompts. Sound too good to be true?

I was a skeptic, but hey what do we have to lose if it actually works. So armed with the Pro version of Claude, this weekend I set out to make an Archery Game purely for fun and learning inspired by Arjuna, the legendary Archer from the Mahabharata.
The good news is it works. The bad news is that it’s simple but not easy. I started my journey asking Claude Sonnet 3.7
“lets create a game with three.js that is Mahabharata themed, with Arjuna trying to hit different targets with his bow and arrow, start with easy static targets then as levels progress move to moving targets.”
That was enough to create a game that works on a desktop. Then I added a few refinements to draw the character better, have some ray tracing etc. Claude was trying to re-generate the game html every single time which was making the context long. There were console errors it tried to fix. Then I added some more precision to the prompt to make changes inline. That seemed to help a bit but the mobile experience was lacking. I had to describe with increasing precision what I wanted.
“The mobile game has a flaw that I need to tap a separate shoot button which directs arrows towards that, Instead lets show the bow string being drawn and release arrow when user releases it towards direction that its pointed to.”
That wasn’t enough too, there were bugs in the game that prevented launch on mobile or desktop and both. So the trick was then to tell it
“you are an expert game developer with three.js and html, you helped me create an archery game for desktop, I want to add mobile capabilities so that someone on a phone can play the game with taps. The current game has a shoot button which is unintuitive. To make it intuitive let’s have it such that user draws the bow string with finger or click, also mimic that on desktop. When finger or click is released, arrow is released in direction that Arjuna is pointing to. Here is the original game you created. Instead of emitting a completely new file make edits inline. Keep it simple and complete the file in one attempt”
What kept happening was the context kept on reaching its limits without the mobile functionality being enabled. Then I tried a different approach Telling the model to “Take a deep breath, pay attention and do the best work of your life.”. It improved its performance to the point that it did exactly what I wanted it to. AI is weird.

I’ve hosted the game here https://arjunaarchery.com and it runs completely in your browser – mobile or desktop.
So where does that leave us? What is Vibe Coding actually good for? Based on what I see, you can prototype any Software Experience rapidly & also make end-end applications. So the cost of prototyping is close to zero now. You are really limited by your imagination & distribution. I wrote zero lines of code to build this, wrangling with prompts instead of code.
Vibe coding is not deterministic yet. I was surprised at the level of prompting required to accomplish a working game in desktop and Mobile. I anticipate models getting better that even the part I was stuck on gets one-shotted soon.
What is needed to vibe code is to have a broad understanding of the world & how things work. That combined with precision of prompt with some anthropomorphism towards the AI model to encourage it to accomplish what you want. This is how things are getting built. It is a strange feeling. It wasn’t as intellectually satisfying seeing claude churn out line after line of code that makes this work as it would have been to be deep in it. That being said this is the first ever graphic game I’ve built. So seeing that work is an incredible feeling. I can imagine apps of extreme complexity being created with Vibe coding.
I definitely see product and engineering melding into one. Tell the AI what to build then have enough engineering chops to deploy, debug and maintain it. Perhaps there will be another AI that does that too.
So if the future is prompting based on understanding the world better and not being limited by your imagination, I think it makes sense to read as much history, science fiction & develop expertise in your field, so that you are empowered to craft the best prompts. The one with the best prompt and imagination wins.