I’ve been teaching coding for 10 plus years in this publication, and when I heard about Vibe coding, I wondered how far I could take it. Could I really publish apps without coding or designing anything? Just how much could I automate with AI? Well, in the last 3 weeks, I’ve published three apps into the app store, and I’ve vibecoded and vibe designed them all. And today, I want to share the tools that made that possible. Oh, and stick around to the end to learn about a bonus tool that is going to speed up your vibe coding by three times. Their words, not mine.
Starting with Astro
Before even starting to vibe code, I need an app idea. And what better way to do that than with data? Using Astro, I can find low-competition keywords that still bring in enough traffic for downloads. Now, finding all these juicy keywords, it’s time to vibe code them all. But there’s one problem: What about UI design?
UX Pilot
That’s when I stumbled upon UX Pilot. This tool is insane. I didn’t know it was possible to generate UIs like this. For instance, you can generate a complete one-shot user flow from a single prompt. You can also modify specific screens and adjust elements with just prompting it. You can even export to Figma and go into dev mode so you can get the Swift UI code for various elements.
struct ContentView: View {
var body: some View {
Text("Hello, Vibe Coder!")
.padding()
}
}
But who has the time for that? We’re vibe coding here. Come on, get with the program.
App Screens
That’s why I refuse to design my own app store screenshots. I can just use App Screens, another awesome tool I recently discovered that saves me a ton of time. I can pick from a gallery of existing templates and just slot in my screenshots and captions. Or, if I’m even too lazy to do that, I’ll just hit a button and generate them.
Now, some cool features I really like is that although you can automate a lot of this, you can also have full control. You can go in and you can modify specific screenshots, change the template for one of them, tweak the layout, change the font—you can do all of that. It also saves you time if you have multiple screen sizes because it generates all of the different screen sizes for you and on all of the different devices. And you can actually even export directly into App Store Connect.
Cursor
Next up is Cursor, which I’ve set up to have Swift syntax highlighting. I can build and compile my project right inside Cursor, and I can launch the simulator as well. I still jump into Xcode from time to time if I want to take manual control because I’m just used to the shortcut keys inside Xcode, but mostly I’m not coding in Xcode or in Cursor for that matter. Yeah, there’s not a lot of coding going on. 90% of the time, I just tell Cursor what I want.
ChatGPT
Now, as for the next tool on this list, you won’t believe it. It’s ChatGPT. Well, if I’m vibe coding in Cursor, why would I need ChatGPT? Well, it’s for a completely different purpose. You see, if you lay out the app as a set of requirements, it’s much easier for Cursor to follow and build your app. So, following the theme of this article, which is to do as little work as possible, I literally just tell ChatGPT to generate this requirements document for me and copy and paste it directly into Cursor.
Now, you may question, can’t you just tell Cursor to generate it? Yeah, I believe you can, but Cursor can’t do this: I used ChatGPT to generate my app icon. At first, it wasn’t trying very hard. It was putting up a valiant attempt, but I wasn’t happy with it. But then I finally got something I was happy with. Sweet.
Revenue Cat
Now things are starting to click, right? We’re moving fast. We’re not caring about the quality of our code or design, but we still want to make money, right? And how are you going to do that without a paywall? That’s why we use Revenue Cat to set up paywalls like nobody’s business. I really like their new paywall editor. You have a ton more templates to select from. And once you do select a template, the editor gives you total control over the layout and all of the elements on the paywall. And as usual, it is insanely fast to integrate RevenueCat into your project. In fact, I vibe integrated it. I added this to my requirements doc and I just told Cursor to do it:
Integrate RevenueCat for in-app purchases. Add a paywall that offers a monthly and a yearly subscription.
And guess what? It works.
Telemetry Deck
Okay, so now we have our paywall. But there’s one more critical thing that all apps, even vibe-coded ones, need, and that is analytics. And I use Telemetry Deck for that. If you’re not tracking, then you won’t know which app shows promise and which app to invest more effort into. And also, Telemetry Deck is as easy to integrate as RevenueCat was. I just added this set of instructions to the requirements document:
- Initialize the Telemetry Deck SDK upon app launch.
- Track key user events such as ‘app_open’, ‘screen_view’, and ‘button_tap’.
- Use your best judgment as to what else to track inside the app.
I told Cursor to initialize the SDK as well as to use its best judgment as to what to track inside the app. Another reason I use Telemetry Deck is because it has an integration with RevenueCat so that you can see all of the user actions leading up to the sale. It just gives you better insights and analytics so you can make more informed decisions. Plus, they recently launched an acquisitions dashboard that has a lot of useful charts and detailed metrics.
GitHub
Now, this next one I would not even think about vibe coding without, and that is GitHub. This is where I draw the line. I know Git source control, it’s not a very vibe-cody sort of thing. We’re supposed to surrender control, right? But AI has messed up my project far too often for me not to use source control. Despite Cursor having this restore checkpoint functionality, which admittedly I do use quite a bit, sometimes it goes so far down the rabbit hole of apocalyptic project-wide changes that it cannot recover, and you need a reliable reset button. GitHub is that. But since I’m a solo vibe coder, I am free to write commit messages like this:
feat: add new stuff
Monday.com
Essentially, it’s just like a checklist because a lot of these apps all require the same sort of things, and it’s useful to keep everything in one place. To be honest, you can just use any project management tool that you’d like.
Bonus Tool: Super Whisper
Okay, now for that bonus tool I told you about that is going to speed up your entire vibe coding process.
I want to add a feature that lets the user select a photo album to review. Can you think through the steps of how we would do this? Don’t code anything yet. Just show me what to do.
Super Whisper allows you to bend Cursor to your will faster than your fingers can. It either has cloud audio processing, or you can choose local device audio processing for more privacy, which is what I did. I mean, until Neuralink gets their act together and is released to the masses, Super Whisper is probably the fastest we can get.
This tool list is a result of my own vibe coding journey, but there is so much that I haven’t explored or tried yet. So if you have tools that you’re using or if you have tools that you’d like me to explore, please share them. And also, if you’re interested in the workflow I use to vibe code and publish those three apps into the app store, let me know as well.