← Back to projects

How I fix vibe-coded apps so they are safe, maintainable and make money

Vibe coding made building apps easy. Making them safe, easy to change and profitable is still hard. Here is what I have found in real AI-built apps, and how I fix it.

81,000Lines deleted in one refactor
5,000Lines added back
2Pull requests

The problem

AI will build your screens. It won't tell you:

And if nobody reviews the code it writes, problems pile up underneath an app that looks like it works.

Example 1: a codebase nobody could touch

What I found: I was asked to refactor a vibe-coded app. The same logic was copy-pasted across dozens of files, every screen had its own version of the same thing, there was no shared structure, and the folders made no sense. The code worked, but nobody could change it without breaking something.

What I did: in two pull requests, I deleted 81,000 lines of code and added 5,000.

The result: the app does exactly the same thing for users. But now a developer can open it and understand it, and features that would have taken days should take hours.

Example 2: credentials sitting in plain text

A client hired me to fix performance problems in a vibe-coded app. Before I even got to them, I found hardcoded credentials sitting in plain text in the code. The app was live, with real users. Vibe coding ships fast, but fast and secure are two different things.

Example 3: making the app earn

The part AI leaves out is the business around the app. On one app, fixing only ad placement, timing and showing strategy took the AdMob show rate from 60% to 80% and revenue up 20%, with the same users and no new features.

What I check in an AI-built app

What I work with

I work in native Android (Kotlin, Jetpack Compose) and iOS (Swift, SwiftUI). [TODO: Say whether you also take on Flutter, React Native or other cross-platform code that AI tools often generate.]

Built your app with AI? Let's make it safe and make it earn.

Send me a link to your app and tell me what's not working: crashes, slow screens, low ad revenue, or no one paying. I'll tell you where I'd start.

Email Me About Your App