Technical Architecture

How OfflinePDF Works

Your files never leave your device. Here's exactly why that's true — no marketing fluff, just the technical facts.

The Core Idea: Local-First Architecture

Most PDF tools work like this: you click "upload," your file travels to a server in a data centre, a backend process runs on it, and a modified file is sent back. Your document touched someone else's hardware.

OfflinePDF is built differently. There is no server that receives files. The PDF processing code runs directly inside your browser — the same Chrome, Firefox, or Safari you're already using. Your file moves from your disk into your browser's memory, gets processed there, and the result is written back to your disk. That's the entire data flow.

The offline test: Load any tool on this site. Then turn off your Wi-Fi or switch to Airplane Mode. Try using the tool — it still works. iLovePDF, Smallpdf, and similar services will show a network error. We won't. That's not a feature we added; it's a direct consequence of local-first architecture.

The Technical Stack

Here's what's actually running when you process a PDF on this site:

File Access Browser File API — reads files from your disk into memory. No HTTP request is made.
PDF Engine pdf-lib 1.17.1 — a pure JavaScript library that creates, modifies, and reads PDFs in-browser.
PDF Rendering PDF.js (Mozilla) — renders page thumbnails locally onto <canvas> elements.
Processing CPU Your device's CPU and RAM — nowhere else.
Server Processing None. Not built. Not available.
File Upload None. Not built. Not available.
File Storage None. We have no storage layer anywhere.
Download Browser Blob API — the output file is saved directly to your device via a local download.

The Open-Source Libraries We Use

All open-source. All verifiable. All run inside your browser tab — they never send your data anywhere.

pdf-lib 1.17.1
Creates and modifies PDFs in pure JavaScript. Used for merge, split, rotate, watermark, and all page-level operations.
PDF.js (Mozilla)
Renders PDF pages as canvas elements for thumbnail previews. The same engine Firefox uses natively.
Signature Pad
Captures freehand signature input in Draw & Sign. Outputs image data embedded into the PDF locally.
SortableJS
Powers drag-and-drop page reordering in Merge PDF and Reorder Pages.

Why Local-First Is Safer Than Cloud Processing

Cloud PDF tools have a structural security problem: they must upload your file. That means:

  • Your file transits a network — interception is a real attack surface
  • The file sits on someone else's server during processing — even briefly
  • Their infrastructure becomes a target — breaches happen at well-funded companies
  • Their privacy policy governs what can happen to your data after the fact

OfflinePDF eliminates all four risks by design. There's no transit — the file never moves over a network. There's no server holding it. There's no breach risk on our end — you can't steal data that doesn't exist on our systems. Our privacy policy is simple: we never receive your files.

This matters most for legal documents, medical records, financial statements, employment contracts, and anything containing personal data. GDPR compliance is straightforward here: no data leaves the device, so there is no data controller obligation on our end for file content.

Progressive Web App — Truly Offline

When you visit OfflinePDF in Chrome, Edge, or Safari, you may see an "Install App" prompt. This installs the site as a standalone app that launches without a browser URL bar — like a native application.

More importantly: after the first load, the app shell and all PDF tools are cached by the browser's Service Worker. This means all tools work with zero internet connection. The PDF engine loads from cache. Your files never leave your device — and now the tools don't need the internet either.

What We Do Collect

To be completely transparent: we use Google Analytics to count page views. We see "someone visited /merge-pdf." That's the extent of it. No file names. No file sizes. Nothing about what you processed.

You can block this entirely with uBlock Origin or any ad blocker and every tool works identically. The analytics code is a separate script — it has no access to your files, which never leave your browser's memory.

Still sceptical? That's healthy. Turn off Wi-Fi and process a PDF. It works. That's your verification — no trust required. Read our Privacy Policy for the formal version, or try a tool now.