I got frustrated with multiple PDFs so I built a 2D canvas for it
My bank asked me to provide 17 PDFs for a mortgage application.
I was drowning in documents as I was trying to keep track of everything by opening and closing files. So I came up with an idea:
What if I could scroll horizontally to see the pages of a single file and vertically to see more files? A free-floating 2D canvas (like Figma) seemed a great way to view multiple PDFs so I built that.
I added a small JSON manifest without touching the main page tree, to describe where files start and end. The result of this is a single, backwards compatible PDF file: when viewed with a standard viewer (Chrome, Acrobat, Preview) it reads as a long continuous document. When opened with my electon, react-base app, the JSON manifest drives the spatial rendering onto a 2D canvas.
I coupled the implementation with native NSWindow overrides to achieve liquid-glass effects, while maintaining fallbacks on Linux and Windows.
**Disclaimer update:** I used Fable 5 to do a full security audit as well as implement core parts of the architecture. I reviewed the code manually, but Fable 5 was great at following the references in my prompts, speeding up even the most challenging parts.