DEV Community

Ali Tools
Ali Tools

Posted on

I Built a Full PDF Editor That Runs 100% in Your Browser — No Uploads, No Servers

Every PDF tool I tried had the same problem: upload your file to some server, wait, download it back — and hope the site deletes it. Contracts, ID cards, bank statements... people upload their most private documents to strangers' servers every day, just to merge two pages or add a signature.

So when I built the PDF editor for Ali Tools (alitools.online), I set one hard rule: the file never leaves the device. Everything — rendering, editing, merging, splitting, converting — happens locally in the browser tab.

How it works, in plain terms

  • Rendering: The document is drawn page-by-page onto canvas elements directly from the file you open. The parser runs in a Web Worker so the UI never freezes, even on a 200-page file.
  • Editing: Text, images, shapes and signatures are absolutely-positioned layers on top of the rendered page. Nothing is baked in until you export.
  • Export: On save, a fresh PDF is assembled in memory from the original file data plus your edits, and the browser downloads it. There is no upload step anywhere in the code path — you can verify this by opening the Network tab: zero requests carry your file.
  • Conversions (PDF to Word, images to PDF, and the rest of the 628+ tools on the site) follow the same local-first pattern wherever the format allows it.

Why local-first matters

  1. Privacy by architecture, not by promise. A "we delete files after 1 hour" policy is a promise. Code that never sends the file is a guarantee.
  2. Speed. No upload/download round-trips — a 50 MB file opens instantly because it never travels.
  3. Cost = $0 hosting for processing. Static files + the visitor's own CPU. That's how the site can afford to keep every tool free with no accounts and no limits.

Trade-offs I hit

  • Large PDFs on low-end phones need lazy page rendering (render on scroll, release off-screen canvases) or the tab runs out of memory.
  • The editing bundle is heavy, so it is code-split: the editor downloads only when you actually open it, not on the landing page. That took our mobile PageSpeed from the 50s to the 80s+.
  • Browser print pipelines differ just enough that "Print to PDF" output needs per-browser checks.

The editor is free to use — no sign-up: https://alitools.online/pdf-editor/
And the full toolbox (image/video compressors, converters, calculators, generators, more PDF tools) lives at https://alitools.online/

If you build tools for the web: what's stopping you from going local-first? I'd genuinely like to hear where this approach breaks for your use case.

— Ali Haider, maker of Ali Tools

Top comments (0)