From Code to Google Play: Shipping MicroQuote as a Solo Developer
Earlier this month, production release versionCode 8 of MicroQuote went live on the Google Play Store.
It is a milestone that marks the end of an intensive development sprint and the start of an ongoing product journey. Building and shipping a mobile app completely solo—from the first line of TypeScript to production store approval—is a sobering, deeply rewarding discipline.
Here is the story behind why I built MicroQuote, the architectural choices that made it work, and the practical lessons learned along the way.
The Problem on the Ground
Most software built for small business quoting assumes an idealized environment: high-speed fiber, desktop monitors, and plenty of time to sit down with accounting software.
Reality looks completely different for independent tradespeople—plumbers, electricians, carpenters, mechanics, and site contractors.
When you’re standing in someone’s driveway or inspecting a distribution board in a basement:
- Your hands are dirty.
- Cellular signal is often intermittent or completely absent.
- You don’t have time to log in to a web dashboard or click through multi-step forms.
- If you don’t provide a quote right there and then, you have to remember to do it when you get home hours later—and every hour of delay drastically cuts your conversion rate.
I wanted to build a focused, lightning-fast utility that does one job exceptionally well: let an artisan enter line items, calculate totals, capture a client’s signature on glass, and generate a branded PDF quote ready to send over WhatsApp before leaving the driveway.
Architectural Decisions
When building solo, your architecture is your survival mechanism. Every speculative feature or unnecessary dependency is a future maintenance tax. I kept the stack tightly disciplined:
1. Offline-First as a First-Class Requirement
In South Africa and many emerging markets, relying on a cloud backend for basic operations is a non-starter on active job sites.
MicroQuote is engineered to be 100% functional without an internet connection:
- Local Persistence: Powered by
expo-sqliteand local storage. Quotes, line items, customer records, and settings read and write with sub-millisecond local latency. - Zero Cloud Latency: The app doesn’t wait for server roundtrips or API handshakes to save an item or update a balance.
2. On-Device PDF Compilation & Signature Capture
Instead of sending payload data to a cloud rendering microservice (which introduces latency, privacy concerns, and server costs), document generation happens entirely on-device:
- We render HTML/CSS vector templates dynamically and compile them directly to PDF via
expo-print. - Signatures are captured via touch canvas and embedded as base64 vector paths directly into the PDF layout.
- The compiled document is handed off instantly to
expo-sharing, letting the tradesperson send it via WhatsApp, email, or nearby Bluetooth transfer in seconds.
3. Lightweight, Zero-Dependency Internationalization
To reach diverse markets without bloat, MicroQuote supports six languages out of the box: English, Afrikaans, Spanish, French, German, and Portuguese.
Rather than installing heavyweight localization libraries with dozens of transitive dependencies, I implemented a zero-dependency catalog resolver using expo-localization. It dynamically detects device locale, resolves keys against type-safe JSON catalogs, and handles string interpolation with zero overhead.
4. Hardening & Performance
- Binary Shrinking: Configured Android build properties with R8 and Proguard rules to strip unused bytecode and shrink binary resources, ensuring fast download times on budget Android hardware.
- Telemetry: Integrated lightweight observability via EAS Observe to monitor Time-to-Interactive (TTI) and track real-world device performance across low-end and flagship devices.
- Monetization Architecture: Clean freemium boundaries powered by RevenueCat. Free users get 5 quotes per month with watermarked PDFs; upgrading to MicroQuote Pro unlocks unlimited quoting, unwatermarked documents, custom company logo uploads, and CSV reporting.
Navigating the Google Play Release Gauntlet
Anyone who has shipped to Google Play recently knows that getting an app approved today is vastly different from five years ago:
- The 14-Day Closed Testing Gate: Google’s requirement of having 20 opted-in testers for at least 14 days is a serious filter for solo developers. Managing test cohorts, collecting feedback, and maintaining active testing requires deliberate community coordination.
- Strict Data Safety Audits: Proving zero unnecessary data collection, documenting local storage encryption, and strictly scoping Android permissions.
- Production Verification: Addressing edge cases across different screen densities, Android OS variations, and notch orientations until
versionCode 8was approved for global rollout.
Crossing that finish line and seeing the live download link on the Google Play Store is an incomparable feeling.
Key Takeaways for Solo Engineers
- Solve a concrete, painful friction point. MicroQuote doesn’t try to be an enterprise ERP. It solves one specific, painful moment: getting a professional quote signed and sent before leaving a customer’s property.
- Offline-first builds user trust. Software that never spins, never says “connecting…”, and never fails because of a dead cell tower feels like a superpower to people working in the real world.
- Keep the dependency tree ruthless. Every library you don’t install is a bug you’ll never have to triage at midnight.
- Ship. Perfect is the enemy of deployed. Getting a polished, reliable v1 into real hands teaches you more in a week than three months of speculative roadmapping.
MicroQuote is developed by Lagari Group and is available now on the Google Play Store.