TL;DR
Before you deploy, check for hardcoded secrets, unset environment variables, missing HTTPS, unprotected routes, open database access, unvalidated input, missing security headers and error pages that leak details. Fix the 8 critical items before launch. The 12 important ones can wait a week, and the 6 recommended ones can wait until you have time.
Think of this as your preflight checklist. Pilots don't skip theirs after a hundred flights, and you shouldn't skip this because you've deployed before.
Twenty-six items sounds like a lot. Most take under a minute to verify, though, and anything you catch here is far cheaper to fix than something a user finds in production.
Quick Checklist (5 Critical Items)
Secrets & Configuration 5
HTTPS & Transport 3
Authentication & Authorization 5
Database Security 4
Input Validation 3
Security Headers 3
Error Handling & Logging 3
How to Use This Checklist
Work through every item before you push to production. Found a problem? Fix it before moving on. The list covers the issues that turn up most often in vibe-coded apps, and the secrets section is where we'd start. A leaked key is the one mistake a redeploy can't undo: once it's public, you have to rotate it.
How long should this checklist take?
Expect 30-60 minutes for a simple app and 2-3 hours for a bigger one. The first pass is the slow one, since you'll probably be fixing things as you go. After that it's quick.
What if I can't complete all items?
Secrets & Configuration and HTTPS & Transport are non-negotiable. The rest depends on your app: no user accounts means you can skip the auth items. Handle any user data at all, though, and every item applies.
Should I automate these checks?
Yes. CI/CD pipelines, security scanners and monitoring can handle a lot of these. Let the tools catch problems early, and use this checklist as the final pass before you deploy.
Automate This Checklist
Run npx checkyourvibe scan to automatically check many of these items in your codebase.