What is vibe coding?
It is how a weekend app ends up storing real customer data with nobody able to say how.
Vibe coding
Vibe coding means describing what you want to an AI model in plain language and accepting its output, without reading the code it writes. The term comes from Andrej Karpathy, who described giving in to the vibes and forgetting the code exists.
You write what the app should do. The model writes the implementation. When something breaks, you paste the error back in and prompt again, rather than opening the file yourself.
That is different from using AI as a coding assistant. An engineer using Copilot or Claude still reads every diff before it merges. Vibe coding skips that step on purpose. Speed is the entire point, and reading the code would slow it down.
What it is actually good for
Vibe coding is a legitimate way to answer one question fast: does anyone want this? A founder can turn an idea into a clickable app in a weekend. Ten real users can try it before anyone writes a spec.
That is a genuine use of the tool, not a lesser one. Plenty of production software should have started this way instead of skipping straight to a six-month build nobody had validated yet.
The trouble starts when the same app keeps running after it works. Nobody decided to build production software. It just never stopped, and it is still storing whatever users typed into it on day one.
- PromptDescribe the feature in plain language.
- GenerateModel writes the implementation.
- ShipDeploy without reading the diff.
- GrowReal users, real data arrive.
- BreakNobody can explain the failure.
The gap is auth, data rules and failure handling — the parts a demo can skip and a paying customer cannot.
Common questions
01Is vibe coding bad?
No, not for what it is for. It is a fast way to test an idea before committing engineering time to it. It becomes a problem only when a prototype that was never reviewed keeps running with real customer data and nobody notices the transition.
02What goes wrong in a vibe-coded app?
The parts a demo does not need are usually missing. Proper authentication. Rules about which user can see which data. Handling for requests that fail partway through. None of this shows up in a walkthrough. It shows up under real load, with real accounts.
03Can a vibe-coded app be turned into production software?
Often, yes. The product idea and a working prototype are real progress. Turning it into production software means reviewing the generated code, adding the access and data rules it skipped, and testing what happens when something fails. That is usually less work than starting over.
04How do you know if your app has outgrown vibe coding?
The clearest sign is a buyer's security questionnaire, or a customer asking where their data goes. If nobody on the team can answer with certainty, the app has already outgrown the stage where nobody needed to read the code.
Related pages
- Vibe-coded prototype vs production build →What actually changes between a working demo and software your customers depend on.
- AI prototype to production →How we take a generated prototype through the review a paying customer requires.
- Can you scale a Bubble app? →The same question, asked about a no-code builder instead of an AI-generated codebase.

