PDF Master: on-device OCR and web PDF tools that scale to zero
A scanning app for iOS and Android ("Scan to PDF" in the stores) where documents never leave the phone, and pdfmaster.guru, a site in 6 languages that merges, splits, compresses and converts PDFs on Cloud Run, with Stripe payments.

Private documents, and servers that cost money even when idle
People scan IDs, contracts and invoices. They don't want those documents traveling to a server just to read the text.
And a PDF tools website has peaks and dead hours: a server running all day costs money even when nobody uses it, and converting a large PDF can't take forever.
Technical decisions, and why
On-device OCR
The app recognizes text with ML Kit on the phone itself. Scanned documents are never uploaded to a server and no account is needed.
Cloud Run that scales to zero
The web API, in FastAPI, runs on Cloud Run with zero minimum instances: no traffic, no compute cost. Firebase Hosting serves the site from its CDN.
Measure before paying more
Load tests showed 1 vCPU performs like 2 for these single-threaded tools: half the cost. Turning on CPU boost cut the cold start from 7.4 to 0.31 seconds.
Files that delete themselves
Web files go to Cloud Storage with a rule that deletes them after a day, and results are delivered through signed links that expire in an hour.
How it runs day to day
- Real automated checks
- Our monitor checks the site and the API, merges two real PDFs and opens a Stripe test checkout to confirm payments work, without charging anything.
- Tests on every change
- GitHub Actions runs backend and frontend tests on every change, and each approved version deploys itself to Firebase and Cloud Run.
- SEO built in
- Every deploy regenerates canonical tags, hreflang, the sitemap and structured data in all 6 site languages.
- Up to date with the stores
- The app uses Play Billing 8, as Google requires, and a photo permission Google Play had rejected was removed.
What it’s built with
- Flutter
- ML Kit (OCR)
- FastAPI · Python
- React · Vite
- LibreOffice
- Ghostscript
- Tesseract
- Cloud Run
- Firebase Hosting
- Cloud Storage
- Stripe
- GitHub Actions
What does success look like for your product?
The first call and the proposal are free. The person who will lead your project replies in person.