# A vibe coding platform that still owns the unread code

> Vibe coding is describing software and accepting the result. A platform around that loop still leaves you liable for unread code. Here is the honest version.

Source: https://northerngo.com/resources/vibe-coding-platform/
Language: en
Updated: 2026-08-16

---
**A vibe coding platform turns a sentence into a running app. Karpathy coined the term for accepting diffs without reading them. That loop is useful for prototypes. It does not move liability: unread code still contains your bugs. NorthernGo is an AI app builder around that loop, with local WebGPU generation and a ZIP when you decide to read it.**

### What Karpathy actually said

[Vibe coding](/glossary/vibe-coding/) is not "using AI to write software". Karpathy's 2025 description was narrower and slightly mocking: you talk to the model, accept the diff, paste the error back, and judge the result by whether it appears to work. He framed it as fine for throwaway weekend projects.

Marketing dropped the qualifier. Every [AI app builder](/glossary/ai-app-builder/), every editor assistant and every landing page now calls itself vibe coding. Most of that is ordinary programming with a fast autocomplete. The word only earns its keep when you *did not read the code*.

That distinction matters because the unread code is still yours. Injectable queries, missing auth checks and keys in the client bundle do not announce themselves. The app looks finished. The liability did not move.

### What a platform adds to the loop

A chat window in an editor is not a platform. A platform around vibe coding provisions the boring parts so the sentence can become a URL: a database, login, hosting, a PWA shell. NorthernGo does that. You describe the idea in text, voice or a sketch. Three agents — Architect, Builder, Critic — plan, write and review. The output is one HTML document of vanilla JavaScript and Tailwind, with `window.NorthernGoDB` already injected.

Local generation through WebGPU keeps the prompt on your GPU and is unlimited on every plan, including Free. Cloud generation uses Gemini and is metered: five, twenty-five or fifty times a month depending on the plan. [Ollama](/resources/connect-ollama-local-models/) is the option when the browser model is too small and you still refuse to send the prompt away.

The platform does not read the code for you. It makes the loop fast enough that skipping the read is tempting. That is the product risk, stated in the open.

### Where the loop is the right tool

Vibe coding is genuinely good for a short list.

Internal tools with a handful of trusted users and no card data. A booking board for a single site. A CRM that is really a contact list. A prototype you will throw away after the meeting. Exploring whether an idea is even a product.

Those jobs match what NorthernGo is shaped for. They are also the jobs where an unread security hole hurts fewer strangers — until you put a public signup in front of the same file.

The [vendor lock-in guide](/resources/avoid-vendor-lock-in-ai-builders/) is the concrete version of the exit. This page is the category argument.

### Where it stops being harmless

**The debugging cliff.** Progress is fast until something breaks in a way the model cannot guess. Then you must understand a file you have never read. There is no gradual on-ramp.

**Silent wrongness.** A pipeline that stores deals without error but double-counts them will look perfect in the demo.

**The last twenty percent.** Timezones, double-booking, refunds, accessibility, article 17 deletion that actually deletes. Generation gets you the first screen. Shipping gets you the rest.

**Vendor lock-in dressed as flow.** If the only way to keep iterating is inside one vendor's runtime, you are not vibe coding. You are renting a canvas. [Source export](/resources/avoid-vendor-lock-in-ai-builders/) is how you keep the right to read the code later, on your own machine.

NorthernGo's ZIP is on Premium and Pro. The Free plan is a trial of the loop, not a home for a business. The exported file still calls our injected globals until you replace them. That is the honest portability story, not "one click and you are gone".

### Local vibe coding is a different product

Most vibe coding platforms are cloud meters with a chat box. Every accepted diff is a bill. Every prompt leaves the building.

Local generation inverts the economics and the privacy story. The model file downloads once. After that the sentence never leaves the GPU. You can iterate on a colour for an hour without spending a credit. The quality gap is real: Qwen 3.5 4B is not Gemini. Use local for the thirtieth tweak. Spend cloud generations on the structure.

That split is why this site keeps repeating [local versus cloud](/resources/local-ai-vs-cloud-ai-app-builders/). A vibe coding platform that cannot run locally is a vibe coding *service*. The words are not interchangeable.

### You still own the unread file

Karpathy's joke only works if the project is throwaway. The moment a stranger can create an account, the unread HTML document is a product you shipped. NorthernGo makes that document inspectable on purpose: one file, no build step, ZIP on Premium and Pro. Free has no export, so the vibe stays inside the builder until you pay. That is a product limit, not a philosophy.

The remaining attachment is the injected SDK. Database, mail and webhooks still point here until you replace them. Portable is not independent. Read the unread auth path, the delete-account call, and anything that writes a price. The Critic catches unclosed tags. It does not catch a wrong total that still renders.

The last twenty percent is the same cliff as every other AI app builder. Timezones, double-booking, a pay button that marks a slot taken without taking money. Generate the first version in the loop. Finish those parts as a person who has opened the file. Anyone selling vibe coding as a replacement for that reading has dropped the half of Karpathy's sentence that made it honest.

Cursor remains the better tool if you already live in a repository and want to review every diff. NorthernGo is the better tool if you need a URL, a database and a PWA from a sentence, and you accept that the sentence is not a senior engineer. Mixing the two — generate here, read later in an editor — is allowed. Pretending you will never need the second half is not.

### How to use the loop without lying to yourself

Write the prompt as records and rules, not as a brand. "Contacts with unique e-mail, notes, three pipeline stages, login, delete-account" beats "build me a modern CRM".

Accept the first draft. Then open the file. Search for `save(`, `getToken(`, `innerHTML`, and any string that looks like a key. If you cannot do that, you are not ready for real users.

Keep the project in version control from the first working save. Vibe coding without git is how you lose the one version that worked.

When the app has login, keep the delete-account button. When it has personal data, read the [GDPR checklist](/resources/gdpr-compliant-app-building-eu/). When you want the prompt to stay on the machine, use [local AI](/glossary/local-ai/).

The platform will not refuse to generate a dangerous app. That is still your job. The useful promise is speed plus an exit, not magic plus innocence.

Pricing on this platform is a cloud meter plus unlimited local generation: Free is five Gemini generations, Premium twenty-five, Pro fifty. Local WebGPU is uncapped on all three, including Free at 0 SEK. That is what makes the Karpathy loop cheap enough to use as exploration rather than as a credit burn. It is not what makes the unread file safe. You can also describe the app with voice or a sketch, not only a typed prompt. That does not change the ownership of the output. A sketch of a calendar is still a booking app you have to test in two browsers.

## Frequently asked questions

### What is a vibe coding platform?

It is a tool that turns a plain-language description into a running application and lets you change it by talking, rather than by editing files first. The original term meant accepting the generated code without reading it. A serious platform still gives you a way to export and read that code later.

### Is vibe coding safe for a production app?

For a prototype or an internal tool with trusted users, the loop is often enough to get to a first version. For payments, public signups or personal data, you must read the unread code before launch. The platform does not take on that liability.

### Does NorthernGo support vibe coding locally?

Yes. Local generation through WebGPU is unlimited and free on every plan, and you can point the builder at your own Ollama instance. Cloud generation with Gemini is metered. Local models are smaller, so the honest pattern is local iteration and cloud generations for hard structure.

### Who owns code written by vibe coding?

You do, including the flaws. NorthernGo generates vanilla JavaScript and Tailwind that you can ZIP on Premium and Pro. Ownership of unread security bugs is also yours, exactly as if you had typed them.

---

## Related

- [Build with Claude, Cursor and ChatGPT without remote-controlling the account](https://northerngo.com/resources/build-with-claude-cursor-chatgpt/)
- [Local AI vs cloud AI app builders: cost, privacy and speed](https://northerngo.com/resources/local-ai-vs-cloud-ai-app-builders/)
- [How to avoid vendor lock-in when building with an AI app builder](https://northerngo.com/resources/avoid-vendor-lock-in-ai-builders/)
- [Building GDPR-compliant apps: a practical checklist for EU founders](https://northerngo.com/resources/gdpr-compliant-app-building-eu/)

---

NorthernGo is an AI-powered platform for building production-ready web apps with zero coding. Local AI generation via WebGPU is unlimited and free, and you own all generated source code. https://northerngo.com/
