I chose flutter due to some reasons,
- I had experience with it.
- Easier for doing cross compilation.
- Better communities support and my friend circle know this as well.
I built RevPDF after trying to edit my resume on the bus and finding nothing good on mobile - everything was either cloud-based (didn't want my resume on random servers), subscription-locked, or 100s of MBs.
The blog post breaks down how I got it to ~20MB vs the typical 150-300MB:
Key decisions:
- Flutter + C++ instead of Electron (saved ~100MB right there)
- No cloud infrastructure - everything local (privacy + smaller size)
- Minimal dependencies - custom components where possible
- Smart asset management - Google Fonts instead of bundling
Trade-offs I made:
- No OCR, 3D PDF support, or advanced signatures
- But for basic editing, forms, annotations - it's much faster
- Desktop is free, mobile has small one-time payment
A German tech blog found it and wrote about the "no cloud requirement" - turns out privacy-conscious users were desperate for this. Now at 10k+ downloads.
Genuinely curious:
1. For Flutter developers - any size optimization tricks I'm missing?
2. What PDF features do you actually use daily vs what's just bloat?
3. Would open-sourcing the rendering layer be useful?
Happy to answer technical questions about the implementation!
I spent the last few months building a PDF editor that doesn't feel like a web browser. Most mobile PDF 'editors' today are 500MB+ bloatware that require a cloud login just to edit a single line of text. I wanted to see how small and fast I could make a native engine.
The Tech:
Engine: Built in C++ using PDFium. I used Dart FFI to bridge the engine to the UI.
Size: 11MB. No trackers, no telemetry, no 'cloud sync' prompts.
XObjects: This was the hardest part. I noticed even industry leaders fail to edit nested XObjects on mobile. By working directly with the C++ layer, I was able to implement native manipulation for these.
AI: I used an AI companion to boilerplate the FFI layer and some of the C++ structures, which allowed me to focus on the actual PDF spec implementation.
Why it exists:
I recently shared a demo on Reddit and got 1,400+ upvotes from people who were just as frustrated as I am with the current state of PDF software. It’s currently on Android, but since the core engine is pure C++, I’m porting it to Desktop (Mac/Linux/Windows) next.
It’s 100% offline and requires no sign-up. I'd love some technical feedback on the editing performance or the UI responsiveness.