VIBE⌇BRATOR
Take the Vibe Check

The ten parts, one at a time

Your stack is a building.

People will ask what your “stack” is. They mean: what are the parts, and how do they fit together. Every diagram of it is boxes and arrows drawn by someone who already gets it. So here is the version that finally made it click: you are not writing software, you are putting up a building. It has a front door, hallways, floors, a food court, and a stockroom nobody sees.

Scroll to walk down through it ↓  ·  every floor is a button you can press

10Databasethe stockroom09Background jobsthe loading dock08Third-partythe food court07Servicesthe back rooms06API routesthe hallways05Auththe membership desk04Frontendthe lobby and the map03HTTPS / TLSthe bag check02CDN / Edgethe nearest doors01DNSthe sign on the highway

01 / 10

DNS · the sign on the highway

  1. 01

    DNS the sign on the highway

    Turns your name into an address, so browsers can find you. It is the one floor you rent instead of own.

    What bites: Get one line of it wrong and the whole building disappears while every machine inside it is perfectly fine. Worse, the fix takes as long as your own settings said it should — the internet is still handing out the old answer.

  2. 02

    CDN / Edge the nearest doors

    Copies of your lobby kept close to every visitor, so the page opens fast no matter where they are.

    What bites: Old copies. You shipped the fix, and the door nearest your visitor is still handing out yesterday's version. Clear the copies, then check from a machine that is not yours.

  3. 03

    HTTPS / TLS the bag check

    Proves the door really belongs to you, and seals everything said inside so nobody in between can read it.

    What bites: A certificate made out to one name, put on a door with a different name. The browser calls it a mismatch. Your visitor calls it a scam warning and leaves.

  4. 04

    Frontend the lobby and the map

    Everything the visitor sees and touches. It runs on their machine, not yours.

    What bites: Anything the browser can show, the visitor can read and change. Passwords, prices and rules that live only here are suggestions, not rules.

  5. 05

    Auth the membership desk

    Works out who is at the door. That is all this desk does, and the word for it is authentication.

    What bites: The desk checks your ID. It does not decide which floors you may walk onto — that is a separate job, and it has to happen in every hallway. Mixing the two up is how you get login loops and doors left open.

  6. 06

    API routes the hallways

    Named paths from the lobby to the back rooms. Every request the app makes walks down one of them.

    What bites: A hallway with no badge check of its own is an open door, no matter what the lobby did. Check at the top of every path, not once at the front.

  7. 07

    Services the back rooms

    Where the actual work happens: pricing, bookings, invoices. The rules of your business live here.

    What bites: AI will happily put those rules in the lobby instead, where anyone can see them. A rule that exists in two places slowly stops matching itself, and nobody notices until the two disagree in front of a customer.

  8. 08

    Third-party the food court

    Other people's businesses, leased space inside your building: payments, email, maps.

    What bites: When they go down it looks like you went down. Messages they send you are not really from them unless you check. And one of their keys, leaked once, runs up your bill.

  9. 09

    Background jobs the loading dock

    Work that happens away from the customer: sending, exporting, retrying, cleaning up.

    What bites: Jobs that fail quietly. If nothing counts the failures and tries again, the dock fills up and nobody out front has any idea.

  10. 10

    Database the stockroom

    Everything you actually own, in one place, behind one door.

    What bites: The lock has to be in the elevator, not on a sign in the lobby — the database itself has to refuse, not the code around it. And a backup you have never actually restored is a hope, not a backup.

The part that bites people

One customer must never see another customer’s stuff

Say two companies both use your app. Each one rents its own floor. A badge for floor 3 should open floor 3 and nothing else. Here is the bit worth burning into your head: the sign in the lobby is not what stops anybody. A sign is a polite request. The elevator refusing the badge is what stops them.

In your app, the sign is the code you wrote — the line that says “only show this customer their own rows.” The elevator is the database itself. If the only thing keeping people apart is that one line, then one forgotten line, or one person editing the web address in their browser, and somebody is standing in a stranger’s stockroom reading their files.

Put the lock in the elevator.

Make the database refuse, not just your code. That is the whole idea, and it is the most expensive thing people learn the hard way. The Security Boundary prompt makes an AI tool build it that way, and the Vibe Check will not pass a build without it.

Own your data

Know where your database lives and whose account it is in. Some app builders host it for you. For example, Supabase’s own docs say a Lovable Cloud database is not in your Supabase account, does not show on your Supabase dashboard, and cannot be switched to your own Supabase account later; you have to move the data yourself (Supabase docs).

Export your data on a schedule, keep the export somewhere you control, and try restoring it once.