How I Built Pixistan in 72 Hours with Vibe Coding

How I Built Pixistan in 72 Hours with Vibe Coding
I built Pixistan — an AI image tool with a Pakistan-first design — in 72 hours using vibe coding, mostly Lovable and Cursor. Spec on Friday night, live URL by Monday evening. This is the honest log. What worked, what almost killed the launch, and what I'd do differently now.
I get asked for this story a lot, so I'm finally writing it down.
Friday, 10:47 PM — the spec
Started on the sofa with a cup of chai and my daughter finally asleep. Wrote a one-page spec in Notion. Not a design doc. Not a feature list. Just:
- Who is this for? (Pakistani creators, students, small business owners who want simple AI images without a subscription paywall)
- What's the first screen? (Prompt box + local flavors of styles)
- What are the 3 core actions? (Type prompt → pick style → generate → download)
- What's the vibe? (Green and white, subtle, respectful, not shouting)
That's it. One page. If I couldn't write it in one page, I didn't understand it yet.
Saturday morning — the first draft
Opened Lovable at 8 AM. Fresh mind. Pasted the spec. First prompt was literally the whole spec plus one line: "Build the landing page and prompt entry screen first. Green (#00A651) and white. Clean."
By 8:14 AM I had a working landing page. Ugly, but working.
I spent the next four hours in a tight loop: click, break, describe what broke, wait, test. Small commits. One change per prompt. That's the discipline that separates a 72-hour build from a 72-day one.
Saturday afternoon — the image generation
Wired up an image generation API. Streaming worked on desktop, failed silently on mobile Safari. Classic. Debugging it on my phone in the driveway while my brother waited for me to leave for dinner is a memory I won't forget.
The bug: I was reading the response body twice. The fix: read once, buffer, then render. Twenty minutes in Cursor with the exact error message pasted in. Fixed.
Saturday night — the moment I almost quit
At 11 PM I tried to add user accounts. Signup, login, saved history. Broke everything. Users could see each other's images. Panic.
Turned off auth. Went to sleep. Told myself I'd solve it Sunday.
Lesson: when a big change breaks a working build, revert first, sleep second, redesign third. Do not push through at 2 AM. You'll ship a bug you can't reproduce for a week.
Sunday — auth done right
Fresh brain. Rebuilt auth using Supabase, one screen at a time. Wrote RLS policies explicitly — every table locked to auth.uid(). Tested by opening two browsers with two accounts. Confirmed neither could see the other's rows.
That took four hours. Instead of the 12 I'd have spent debugging Saturday night's hack.
Sunday night — polish and cover the edges
Added:
- A public gallery of demo generations
- Downloads that actually save with a proper filename
- A very simple, honest pricing page (free tier + paid)
- OG tags so shares on WhatsApp actually looked good
The OG tag work took an hour and probably drove 30% of the launch traffic. It's not optional in Pakistan where everything travels through WhatsApp groups.
Monday — launch day
Wrote a launch post on LinkedIn. Simple structure: what it is, why I built it, one screenshot, one link. Nothing clever.
Went live at 4 PM. First user in 6 minutes. First paying user in about two hours. First bug report in three. Fixed it in twenty minutes with a direct prompt to Lovable.
What actually made it possible
Three things:
1. A tight one-page spec. No wandering. No feature creep. If it wasn't on the page, it wasn't in the launch.
2. Small commits, described by outcome. Not "add a useState." "Show the loading spinner only during generation." Read my prompt guide — this is the whole game.
3. A willingness to revert. Two of my three biggest speedups came from throwing away work.
What I'd do differently
- Set up analytics on day zero. I lost the first-week data because I added it Tuesday.
- Write the pricing page before the product. Forces you to think about who's paying.
- Test on real Pakistani networks (3G, slow 4G) before launching. Half our users are on mobile-only.
What this means for you
You can do this. Not "you can build the next Google in a weekend." But you can absolutely build the specific tool your business needs, or the portfolio project that lands your first freelance client, in a weekend of focused work.
Learn the loop. Pick a tool. Ship. Read my Pakistan roadmap if you want a plan.
FAQs
Which tools did you use most?
Lovable for the frontend and initial database wiring. Cursor for the trickier debugging. Supabase for auth and storage. ChatGPT for planning and prompt drafts.
Did you write any code by hand?
About 5%. Mostly small tweaks in the RLS policies and one API integration where the AI kept getting the streaming shape wrong. Everything else was described, not typed.
How much did the 72-hour build cost?
Tool subscriptions I already had (~11,000 PKR/month spread across projects), plus about 4,000 PKR in API calls during dev. Well under 20,000 PKR total. That's less than one day of a mid-level engineer's salary.
Written by Usama Ghazi, CEO of Qawex Solutions.
I'm an International Vibe Coder based in Rawalpindi. I run Qawex Solutions, a Pakistan-first AI product studio building HealthTech, edtech, and automation tools. I've taught over 10,000 students how to build with AI, and I ship products with the same tools I teach — Vibelyflow, Osnify, Pixistan, and more. If any of this hits home, come say hi on WhatsApp or book a call.
Muhammad Usama Ghazi is Pakistan's first Vibe Coder and CEO of Qawex Solutions. He has launched 10 AI-driven products, taught over 10,000 students, and spoken at TechVentures Series and LetsConnect Rawalpindi. Based in Rawalpindi, Pakistan.