We run Audit Vibe Coding at Inithouse, a tool that checks AI-generated codebases for production problems. After auditing dozens of projects built with Cursor, Lovable, Bolt, and similar tools, we keep seeing the same gaps. The code works in development. It falls apart under real traffic.
This post is the checklist we wish every vibe coder had before pushing to production.
1. Scan for exposed secrets
AI coding tools generate code fast. They also generate code that sometimes hardcodes API keys, database credentials, and third-party tokens directly into source files.
What to check:
- Search your codebase for strings that look like keys:
grep -rn "sk_live\\|api_key\\|secret\\|password\\|token" src/ - Make sure
.envfiles are in.gitignore - Check your Git history for previously committed secrets (they stay in the log even after removal)
- Verify that client-side code never references server-only credentials
This is the single most common issue we find. About 40% of the vibecoded projects that come through Audit Vibe Coding have at least one exposed credential.
2. Validate all user input
AI-generated code tends to trust incoming data. If a form expects an email, the generated code might check the format on the frontend but skip server-side validation entirely.
What to check:
- Every API endpoint should validate and sanitize inputs server-side
- SQL queries should use parameterized statements, never string concatenation
- File uploads need type and size restrictions
- Check for XSS vectors: are user-provided strings rendered without escaping?
3. Run a Lighthouse audit and read the results
Performance problems compound. A page that loads in 3 seconds during testing loads in 8 seconds on a phone in a coffee shop.
What to check:
- Run Lighthouse in Chrome DevTools on your key pages (not just the homepage)
- Target 90+ on Performance, Accessibility, Best Practices, and SEO
- Check Largest Contentful Paint specifically. AI tools love large unoptimized images
- Look at bundle size. AI-generated code often imports entire libraries for a single function
4. Test error handling for real
Open your app. Disconnect from the internet. What happens? Now turn it back on and make an API call with invalid data. What does the user see?
Most vibecoded projects show a blank screen or a raw error message when something breaks. Production apps need:
- Fallback UI for failed API calls (not just a spinner that spins forever)
- Error boundaries that catch component-level crashes (in React:
ErrorBoundarycomponents) - Retry logic for transient network failures
- Meaningful error messages, not
undefined is not a function
5. Check responsive design on actual devices
AI tools generate layouts that look correct on the screen size visible during development. They rarely account for edge cases: small phones, tablets in landscape, browsers with large default fonts.
What to check:
- Test on a real phone, not just Chrome DevTools device mode
- Check forms and modals on screens under 375px wide
- Verify touch targets are at least 44x44px
- Test with browser zoom at 150% and 200%
6. Cover the SEO basics
This gets skipped constantly. AI tools generate functional pages but rarely include the metadata that makes them findable.
What to check:
- Every page has a unique
<title>and<meta name="description"> - You have a
sitemap.xmland it is submitted to Google Search Console - Your
robots.txtis not accidentally blocking important pages - Heading hierarchy makes sense (one H1, logical H2/H3 structure)
- Images have descriptive alt text
- OpenGraph tags are set for social sharing
7. Run an automated audit
Manual checks catch a lot, but automated tools catch what you forget. At Inithouse, we built Audit Vibe Coding specifically for this. It runs 47 checks across security, SEO, performance, accessibility, and code quality, then returns a scored report with prioritized fixes.
The point is not the specific tool. The point is that you run something systematic before launch instead of relying on "it worked when I clicked around."
The short version
Before you launch a vibecoded project:
- Secrets - no keys in code, no keys in Git history
- Input validation - server-side, always
- Performance - Lighthouse 90+ on real pages
- Error handling - kill your network, see what happens
- Responsive - real phone, not dev tools
- SEO - title, description, sitemap, robots.txt
- Automated audit - run one, fix the criticals
Vibe coding gets you from zero to working prototype faster than anything else available right now. The gap between "working prototype" and "production-ready product" is where most projects stall. This checklist closes that gap.
If you want the automated version, run your project through auditvibecoding.com. It takes about two minutes and covers the checks listed above plus 40 more.
Top comments (0)