pillar guide
What is vibe coding?
A definition from someone who actually ships with it — not a think piece, not a sales page.
Vibe coding is building software by describing your intent in natural language and letting AI write most of the code — while you keep ownership of the architecture, the product decisions and the mistakes.
That second half matters. The term, popularised by Andrej Karpathy in early 2025, has drifted into meaning everything from "I supervise AI agents all day" to "I don't know what's happening, but it compiles." There is an overlap between those two groups. Unfortunately.
I'm Halfdan Harring, a full-stack developer from Aarhus, Denmark. I vibe code every day, solo, and the products that came out of it — Quiz Fight, TaskMondo, Dolphin Beyond, Nuze and more shipped products — have real users on web, iOS and Android. So this page is the definition I'd give a developer friend over coffee, not the one from a conference stage.
The spectrum nobody draws
"Vibe coding" describes a spectrum of control, and most arguments about it are two people standing on different ends of that spectrum yelling past each other.
- Prompt-and-pray. You describe an app, accept whatever comes back, and ship it unread. Great for demos and weekend toys. Genuinely dangerous for anything with users, payments or private data.
- Supervised vibe coding. You describe features precisely, demand a plan before code, generate in small chunks, review everything, and refactor with taste. The AI types; you decide. This is what I do, and it's the only version I'll defend in public.
The difference between the two isn't the tooling — it's whether anyone is steering. Same editor, same models, completely different risk profile.
What vibe coding is not
It is not "the end of programming." When code gets cheap to produce, judgment gets expensive. You need to see what's worth keeping, feel when a solution is too clever, and know the difference between "it works" and "I can live with this in six months."
It is not lying back and receiving a finished business, complete with onboarding, a payment flow and a small successful LinkedIn post. The demo is not the destination — the demo is where the problems put on nice clothes.
And it is not cheating. Nobody hands back their compiler out of principle. The craft didn't disappear; it moved — from typing the code to judging it.
Why it took over in 2025–2026
Three things landed at once: models got good enough to hold an entire feature in their heads, AI-native editors like Cursor made agents a first-class workflow instead of a chat window, and solo developers realised they could suddenly cover frontend, backend, design and QA alone. I'm one of them: every product on this list was built by one person and an AI that never gets tired of explaining TypeScript errors.
My working definition
Vibe coding is an accelerated conversation with your codebase. You stop typing every line and start directing: describe the product, demand a plan, review small diffs, keep the taste. If you have direction, you get absurdly far. If you don't, you get absurdly far in the wrong direction — which is technically also an achievement.
If that sounds usable, the next step is the practical side: how to vibe code — the exact five-step loop I use — and the stack I run it on. If you want the sharp edges first, read the limitations of vibe coding.
Frequently asked questions
- Is vibe coding the same as AI-assisted coding?
- They overlap, but no. AI-assisted coding covers everything from autocomplete to agents. Vibe coding specifically means describing intent in natural language and letting AI write most of the code, with the developer steering, reviewing and owning the result.
- Can you vibe code without knowing how to program?
- You can get surprisingly far — prototypes, internal tools, simple sites. But for products with real users, payments or private data, someone still has to judge architecture, security and edge cases. AI writes confident code, not automatically correct code.
- Is vibe-coded software production quality?
- It can be. Quality comes from the process around the generation: planning before code, small reviewable steps, real testing and a human who deletes what should not exist. I run several vibe-coded products in production with paying users.
- What tools do you need to start vibe coding?
- An AI-native editor (I use Cursor), one solid stack you actually understand (mine is React, TypeScript, Vite, Tailwind, Capacitor and Firebase), and version control so every AI change is reviewable and reversible.
- Who coined the term vibe coding?
- Andrej Karpathy popularised it in early 2025, describing a way of building where you "fully give in to the vibes" and let the model write the code. The term stuck — and immediately started meaning ten different things to ten different people.