DEV Community

Cover image for Stop Paying $240/yr to Rotate a PDF: Building an In-Browser Document Workstation with WASM
thisran
thisran

Posted on Originally published at handlemyfile.com

Stop Paying $240/yr to Rotate a PDF: Building an In-Browser Document Workstation with WASM

Every software engineer has experienced the indignity of needing to sign an NDA, rotate a tenancy agreement, or compress a 50MB PDF—only to hit an Adobe or DocuSign paywall:

  • Adobe: $239.88 / year
  • DocuSign: $480 / year
  • Random online PDF tools: "Upload your confidential tax audits to our unencrypted AWS S3 bucket in Northern Virginia. Don't worry, we promise to delete it in 2 hours ;)"

Manipulating PDF byte trees, adding digital signature layers, and extracting text via OCR does not require a remote server infrastructure.

We built HandleMyFile as a 100% in-browser, client-side document workstation.


Multi-Threaded PDF Manipulation in Browser Memory

Using pdf-lib compiled to JavaScript and running inside Web Workers, we can merge, split, rotate, and compress multi-page documents without transferring a single byte over the network:

import { PDFDocument } from 'pdf-lib';

export async function mergePDFsLocally(pdfArrayBuffers) {
  const mergedPdf = await PDFDocument.create();

  for (const buffer of pdfArrayBuffers) {
    const doc = await PDFDocument.load(buffer, { ignoreEncryption: true });
    const copiedPages = await mergedPdf.copyPages(doc, doc.getPageIndices());
    copiedPages.forEach((page) => mergedPdf.addPage(page));
  }

  const pdfBytes = await mergedPdf.save();
  return new Blob([pdfBytes], { type: 'application/pdf' });
}
Enter fullscreen mode Exit fullscreen mode

Key Capabilities:

  • In-RAM PDF Compression: Reduces bloated scans from 80MB to under 4MB for email attachments.
  • Client-Side E-Signatures: Draw digital signatures on contracts without recurring DocuSign fees.
  • WASM OCR: Extract text from blurry scanned documents locally via Tesseract WebAssembly.
  • Air-Gapped Privacy: Complete confidentiality for medical, legal, and financial records.

Test the workstation:
👉 HandleMyFile: https://handlemyfile.com

How do you handle document security and PDF workflows in your engineering team? Let's discuss!

Top comments (1)

Collapse
 
onecoderegister profile image
Andrew Cluev •

Processing confidential PDFs in the browser sounds really interesting. Does text recognition still work after the page loads if I turn off the internet?

A tablet or phone app would be more convenient. Are you planning to build one?