I made 20k downloads with my vibecoded game
I didn't expect it, but with almost nothing I built a simple little game — and it passed 20k downloads.
I lean on AI to code more and more in my day-to-day, and it’s simply a game changer. After reading Andrej Karpathy’s post on vibecoding and getting inspired by levelsio, I decided to vibecode something — and why not a little game.

At first I tried some 3D games like levelsio did, but it wasn’t going great: too many details and rules to polish, and I didn’t want to burn that many tokens. I also didn’t have the same ambition he did.
My goal was: “build a working game purely by talking to the AI.”
Since I already have several apps on the KaiOS store, I focused on that platform — and I think that was the real differentiator. As fun and challenging as my game is, it would never get more than 100 downloads on the App Store or Google Play. The lesson: always look for the opportunities nobody else is paying attention to.
A frog vs. flies
But back to the game. I wanted to see how far this thing would go, so I opened Cursor and started with the idea. I decided to make something like Breakout, but with a different twist. For some reason, I remembered a story one of my college professors, Orlando, used to tell over and over across many classes — “the story of the little frog and the big frog” (probably adapted from this one).
That’s it! Frogs! That would be my game’s theme. I quickly figured a Big Frog would defend the little frogs. But what enemies? An assortment of flies!

So I built the first version by describing that concept, and the AI delivered something minimally functional. The game already had points (flies) falling down the screen that the player had to collect to avoid losing lives.
After a few iterations, I got the AI to make the enemies look more like flies, and to draw the frog.

And now — add little frogs to represent the player’s lives.
Wrestling with KaiOS
Done! The basic version was running in my browser. Time to test it on KaiOS. KaiOS is a descendant of the discontinued Firefox OS; the whole system runs on top of a very old browser. Shipping it to KaiOS brought some surprises: the flies rendered distorted, as if stretched; and, for some reason (which I don’t care about, since I’m vibecoding), time ran in slow motion on KaiOS devices.
I gave the AI more context, shared the browser version, and explained the timing problem. A few more iterations and the game already felt more stable. The initial result turned out nice.
Making it a real game
Now it was time to improve the gameplay and add more challenge. I started with a boost the player could trigger every 10 seconds, which made the frog bigger and faster for a few seconds.

Next, I improved the game design by adding more flies. In short, these are the flies, each with a different behavior:

I also asked for the difficulty to ramp up over time, with some harder flies only showing up at more advanced levels.
The next step was adapting the UI for KaiOS. Since I already have a menu system I use in other apps, I reused it in the game.
To bring more challenge, each fly the frog catches becomes a point — which the player can spend at the shop at the end of a match to upgrade the frog. I told the AI what the upgrades were and how purchases would work: three different upgrades for each of the 3 abilities, getting more expensive each tier. The cool part is the AI created a JSON file where, if I want, I can tweak the parameters.
After a few iterations — done, I liked the result. Now I just had to polish a few more details, like the icon and the sounds.
Music, icon, and polish
Since I was vibecoding anyway, I went and vibe-composed a track. I tested a few times until I got what I wanted; I tried Suno, but what pleased me most was the result from producer.ai. It came out great — a frantic track that fit the game’s vibe perfectly and could loop. Prompt: (tetriz, brazilian style, game, syntetic, game, 8 bit).
For the game icon, the best result came from Grok. I picked this one because it held up well as a small icon on KaiOS screens.
![]()
A bit more work to adapt the controls for KaiOS, plus bonuses for players to spend coins on — game wallpapers, and the game’s music as a ringtone. Finally, I asked the AI to generate the manifest — the file distributed to the stores — already translated into several languages.
The result
And we have a working game. The result left me satisfied: it’s fun and challenging, with an exciting soundtrack, and best of all, I actually got to try this vibecode thing. My conclusion for now: yes, you can build cool, functional things with the technique — and have fun in the process. It’s not something I’d yet trust for a serious application, but with good specs you can definitely reach good results.
The numbers (updated June 17, 2026):
- 22k+ downloads on KaiOS
- 36k+ matches started
- a few hardcore players with 300+ matches each
- 1.5k boost purchases in the in-game shop
- 3k+ store redirects driving downloads of my other apps, using my own ad engine
Thanks, and enjoy the vibe.