March 8th to May 3rd. Sixty days. One person. Zero co-founders. Zero funding. Zero prior experience shipping a mobile app to the Play Store.
This is the complete story.
Where it started
I was not looking for a startup idea. I had a conversation with my fiancée — a yoga instructor managing her whole practice on WhatsApp. Not because she did not know better — because the apps that existed were built for studios with front desks. Not for one person teaching thirty students.
I told her I was going to build something better. Then I spoke to her friends — other yoga instructors, fitness coaches, tutors. Every single one was using a paper register, WhatsApp chats, phone notes, or a copy of Excel that had slowly become unusable.
March 8th. First commit. Initialize project using Create React App.
The first two weeks
The first features went in fast — client profiles, attendance marking, birthday reminders, revenue goals — all in the first two days. The tech stack was React, Firebase, Tailwind, Vercel. Everything chosen for one reason: I could move fast with them alone. The app was called UFCM. Universal Freelance Client Manager. Completely unbrandable. I knew it would have to change.
The first real crisis — APK day
March 17th and 18th were the first Android builds. Moving to Android via Capacitor introduced problems I had not encountered before. Safe area insets had to be handled manually. Google Sign-In worked on web using a popup — on Android the popup was blocked silently. Ten APK releases in two days. Then the build size jumped from 4.5MB to 88MB — old APKs were getting bundled into each new build. Found it. Fixed it.
shri — the feature that almost broke the build
My first instinct was to send everything to an external AI. This worked badly — latency was too high and responses were unpredictable. So I built a local intent engine first. For the most common actions the whole exchange happens on the device with no external call at all. Only genuinely complex queries go out to AI, with multiple fallback providers.
The first time the local engine worked I typed "mark attendance" and shri asked "who for?" I typed "Amrita" and shri confirmed and marked it in under a second. That was the moment I knew the app was real.
The rebrand
April 7th. rebrand: UFCM → Prabzo, new logo, v3.0.0. The name came from Sanskrit — prabandhan, meaning management. Prabandhan became Prabzo. One commit. Four weeks of building under a different name, erased from the front end.
Play Store
April 11th, 4am. I submitted Prabzo to the Play Store. Play Store requires closed testing — minimum twelve testers, minimum fourteen days. I had set up internal testing first and spent time wondering why production access was not available. Internal testing does not count. Only closed testing counts. Twelve testers. Fourteen days. Production access April 28th.
May 3rd — live
App registered May 3rd. Marketing started May 7th. By June 15th: 228 downloads, 250+ active users, 15+ countries, zero marketing spend. 238 commits. Version 1.0.0 to 3.5.9.
What I would tell myself on March 8th
Ship before it is ready. The name matters more than you think. Build for someone specific. And document the build — the story of how something got built is often more interesting than the thing itself.