1. Open a PDF

Drag a file in or click to browse. Nothing leaves your device.

📄 Drop a PDF here or click to choose a file

2. Add text

Stamp text onto a page. pdf-lib draws it into the real file.

3. Page tools

These change the actual PDF and update the viewer.

4. Download

Saves the edited PDF with every change applied.

Server-side

Destructive redaction + OCR (Stirling-PDF)

The tools above run fully in your browser. Three jobs cannot be done safely or reliably in the browser, so they run on a headless Stirling-PDF service exposed as a REST API and kept native inside the app:

  • Destructive redaction: content is removed from the file, not just covered with a box.
  • OCR: scanned or image-only PDFs are made searchable and selectable.
  • Flatten: form fields and annotations are baked into the page so they cannot be reverted.
Browser (PDF.js + pdf-lib) | | POST /api/v1/security/redact (multipart PDF) v Stirling-PDF (headless Docker, REST API) | Ghostscript / OCRmyPDF / qpdf v Edited PDF returned to the browser

Disabled in this static demo because no Stirling-PDF endpoint is wired up here. In the delivered build this button calls the Docker service. We do not fake destructive redaction in the browser, because a covering box can be removed and the text underneath recovered.

Preview

No file loaded yet.

🗂 Your PDF preview will appear here Open a file on the left to get started.