The 100-Hour Gap: From Vibecoded Prototype to Working Product

The 100-Hour Gap: From Vibecoded Prototype to Working Product

Introduction to Vibecoding

Last month, I spent about 100 hours on vibecoding, and I’m pretty sure that people who say they “vibecoded an app in 30 minutes” are either building simple copies of existing projects, producing some buggy output, or just farming engagement.

However, I’m not an AI skeptic. Actually, quite the contrary. At my previous startup, we started using AI to code in late 2023, before it was even called ‘vibe coding’.

Vibecoding Experience

We used it for simple stuff, like putting new content into the app’s layout, and as the AI got better, we started shipping more complex features that way. Later, we moved on to Cursor and Claude Code, and that early AI embrace gave us an edge.

Meanwhile, I wanted to test these limits. Aside from vibecoding at Kiwi, I had some experience with “real” coding. I did a 100-day Python course, built JS weather apps, deployed some Cryptozombies smart contracts, and so on.

Choosing the Idea

I decided to build an SLC (Simple, Lovable, Complete) of something fun. Jason Cohen says SLCs are what MVPs were supposed to be. From a few ideas I had on the table, I picked Cryptosaurus. The app would be simple – you pick a dino, the app takes your pfp and creates a dino styled as your pfp.

For example, I had the high-level vision in my head and I knew how to build things “by the book”. But I thought: “Okay, let’s embrace the hype and ‘just build’ like some Twitter influencers say”.

Working Prototype

I started by describing my idea to ChatGPT (5.2 Thinking Extended). We discussed it for a while, narrowed down the scope, and I was ready to start. I sent the scope to Opus 4.5, turned on the Plan Mode, and waited for the outcome.

However, I didn’t like the boilerplate design. So I played around with Coolors to find the palette I liked. Picked something, tested it on the UI, changed some colors. Wash, rinse, repeat. After a few rounds, I got the colors right.

Non-Crappy Prototype

Then I noticed that Claude overly complicated UI and UX. So I started simplifying it. If I used Figma, I would’ve made 10 different variants in 10 minutes and kept a pixel-perfect control over the outcome. But I wanted to “just build”, right?

Therefore, I asked LLM to build a new UI. Didn’t like it, so asked Claude to rebuild it. Some important details were not there, so had to reprompt. Then I figured out I could simplify the UI way further, so asked to rebuild it completely.

Setting Up Infra

Once I figured out the prompt, now was the time to put it out there. Bought a cryptosaurus.app domain on Cloudflare, set it up on Vercel, and now was the time to put my back-end on a server.

Additionally, after a longer chat with an LLM, I decided to use AWS since it was pretty cheap and I always wanted to learn it. Once I opened the panel and saw the vast ocean of AWS services, I knew it’s an overkill.

Conclusion

In conclusion, building a working product from a vibecoded prototype takes time and effort. Don’t believe the hype, and be prepared to put in the work. With the right mindset and tools, you can create something amazing.

Finally, I hope my experience will help you in your own journey. Remember to stay focused, keep learning, and always be open to new ideas and technologies.