What Is Vibe Coding?
Vibe coding is building software by describing what you want to an AI tool in plain language and accepting the code it writes, usually without reading that code closely. You judge the work by trying it. If the button works and the page looks right, you move on. If not, you describe the problem and let the AI try again.
The shift is who does the understanding. In normal development a person reads and owns every line. In vibe coding the person owns the idea and the outcome, and the AI owns the code. That trade is what makes it so fast, and it is also where every risk comes from.
Where Did the Term Come From?
The phrase comes from Andrej Karpathy, a founding member of OpenAI and former head of AI at Tesla. In a post in February 2025 he described a new way he was building small projects: fully giving in to the vibes, letting the AI write the code and not really reading the diffs anymore.
It named something many people were already doing, and it spread fast. By the end of 2025 Collins Dictionary had picked it as its word of the year. Today it covers everything from a weekend side project to founders building a whole startup MVP in an AI app builder.
How Vibe Coding Works in Practice
A typical session looks like this:
1. Describe the app. "A booking app for a yoga studio with classes, a calendar and Stripe payments."
2. The tool generates it. Screens, database tables, login and often a live preview within minutes.
3. Try it and react. "The calendar should start on Monday." "Add a waitlist when a class is full."
4. Paste errors back in. When something breaks, the error message goes straight back to the AI.
5. Publish. One click puts it on a live URL.
For a first version this loop is remarkable. What it skips is everything nobody asked for: who can read which rows in the database, where the API keys live, what happens when a payment webhook arrives twice, and how the app behaves with a thousand users instead of one.
Which Tools Do People Use?
| Type | Examples | Best at |
|---|---|---|
| App builders | Lovable, Bolt.new, v0, Replit | Going from a prompt to a running app with hosting and a database |
| AI code editors and agents | Cursor, Claude Code | Working inside a real codebase, where a developer can review changes |
| Model playgrounds | Google AI Studio | Quick experiments and single-feature prototypes |
If you are choosing between the builders, our comparison of AI app builders and what breaks after each goes through them one by one.
What Vibe Coding Is Genuinely Good For
It would be wrong to dismiss it. Vibe coding is the fastest way we know to:
Test an idea with real people before spending on a build.
Build internal tools that a small team uses and nobody outside ever sees.
Make a clickable demo for investors or a first customer conversation.
Explore a design by trying five versions in an afternoon.
Unblock non-developers who would otherwise wait months for engineering time.
The common thread: low stakes if it breaks, and no sensitive data. Inside those limits it is a genuine superpower.
What Breaks When Real Users Arrive
The problems are predictable, because they sit in the parts nobody looked at:
Database access rules left open. Many builders use Supabase, where row-level security decides who can read what. In 2025 researchers found many Lovable-built apps exposing user data because those rules were never turned on. See Lovable security.
Secrets in the browser. API keys for payments or AI models end up in front-end code where anyone can copy them.
Payments that half work. Checkout succeeds in testing, but refunds, failed renewals and duplicate webhooks were never handled.
No error handling or monitoring. When something fails, users see a blank screen and you find out from a complaint.
Performance cliffs. Queries that were instant with ten rows take seconds with ten thousand.
Code nobody can change safely. After hundreds of prompts, each fix risks breaking something else.
We cover the fixes step by step in taking a vibe-coded app to production, the tools that catch these problems in vibe coding security tools, and what the clean-up tends to involve in the real cost of vibe coding.
Vibe Coding vs AI-Assisted Engineering
The tools overlap, so the labels get blurred. The difference is not which tool you use. It is whether anyone understands what shipped.
In vibe coding, code is accepted because the result looks right. In AI-assisted engineering, an engineer uses the same AI tools to move faster but still reads every change, writes tests and owns the architecture. Our own team writes a large share of its code with AI tools every day. What we do not do is ship code nobody has read.
Both have a place. Trouble starts when a prototype built the first way is treated as a product built the second way.
How to Vibe Code Without Getting Burned
1. Decide what it is. A prototype, an internal tool or a product. Only products need the full hardening, but you have to know which one you are building.
2. Keep sensitive data out until someone has checked the access rules. Test with fake users and fake payments.
3. Export to a real repository early. Most builders can sync to GitHub. That gives you history, backups and a way for an engineer to review.
4. Get a review before launch. A few hours of an experienced engineer reading the database rules, secrets and payment flow catches most of the serious problems. Our 10-point production check is a good self-test first.
5. Plan the handover. If the idea works, the app will need to grow. Decide early whether you will harden what you have or rebuild the core, and do it before the first big customer, not after.
If you have a vibe-coded app that is about to meet real users, our AI builder to production team does exactly this hardening work.
FAQ
What is vibe coding?
Vibe coding is building software by describing what you want to an AI tool in plain language and accepting the code it writes, often without reading that code closely. You steer by trying the result and asking for changes, rather than by writing or reviewing the code yourself.
Who coined the term vibe coding?
Andrej Karpathy, a founding member of OpenAI and former head of AI at Tesla, used the phrase in a post in February 2025. He described giving in to the vibes, letting the AI write the code and not really reading the diffs. The term spread quickly and Collins Dictionary named it its word of the year for 2025.
What tools are used for vibe coding?
Full app builders such as Lovable, Bolt.new, v0 and Replit, which turn a prompt into a running app. AI code editors and agents such as Cursor and Claude Code, which work inside a real codebase. And model playgrounds such as Google AI Studio for quick experiments.
Is vibe coding good or bad?
It is good for prototypes, internal tools, demos and testing an idea with real people quickly. It is risky for anything that stores personal data, takes payments or has to stay up, because the parts that fail in production, such as access rules, secrets and error handling, are exactly the parts nobody reviewed.
Can a vibe-coded app go to production?
Yes, if someone who reads code checks it first. The usual work is turning on database access rules, moving secrets to the server, adding input validation and error handling, setting up backups and monitoring, and testing the flows real users will hit. Some apps need a few days of hardening, some need parts rebuilt.
Is vibe coding the same as AI-assisted coding?
No. In AI-assisted coding an engineer uses AI to write faster but still reads, understands and owns every change. In vibe coding the person accepts code they have not reviewed. The tools can be the same. The difference is whether anyone understands what shipped.
Originally published on Geminate Solutions.
Top comments (1)
We need to produce a comment as a developer, short, 1-2 sentences, specific reaction or question about this video. Must not use prohibited phrases. Should be informal. No markdown. Should be plain text. No quotes? It says output only the comment text. No quotes. So just the comment. Avoid double hyphens. Use plain ASCII punctuation. Provide a question or observation. Something like "any chance you could show how vibe coding handles complex state management?" or "lol, the prompt syntax looked weird, is