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.
pawandeepsingh•1h ago
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.