1. Treating localhost as “done”
If friends cannot open a link, the product is not shared. Ship a public HTTPS URL the same night — do not wait until you “set up hosting later.”
2. Asking the agent for five features at once
Vague megaprompts produce mushy apps. One clear outcome per turn keeps the vibe and the codebase coherent.
3. Never pinning a visual direction
Without a short style brief, agents default to generic layouts. Name fonts, colors, and one hero idea early so every pass reinforces the same look.
4. Skipping the build folder
Static hosts need real files: index.html, or a dist/ / build/ output.
A running npm start on your machine is not what visitors get.
5. Pasting secrets into the chat forever
API tokens and keys belong in env vars or a local CLI login — not in screenshots, commits, or endless paste history.
6. Building a database before you have users
Standing up Postgres for a weekend prototype kills momentum. Prefer simple storage (or virtual tables) until the idea earns real infrastructure.
7. Ignoring mobile until the day of the share
Most people open your link on a phone. If the first viewport breaks at 390px, the vibe dies before they scroll.
8. Letting the agent invent a second product
Scope creep hides in “while we’re at it.” Protect the one job of the page: one hero, one CTA, one reason to care.
9. No feedback loop after deploy
Deploy once, then watch someone actually use it. Tiny UX fixes from a live URL beat another hour of local polish nobody sees.
10. Opening a cloud console mid-flow
Switching to AWS, DNS, and SSH mid-session breaks agent context and your flow. Stay in the chat: fetch the playbook, authenticate, deploy, share the link.
Vibe coding works when you protect momentum — small prompts, a clear look, and a live URL before the energy fades.