Skip to content
Work Apps Pricing About Contact

Case studyPDF signing & forms · Web, iOS & Android

signing PDFs without sending them anywhere

CutPDF signs, fills and reads PDFs entirely on your own device. Nothing is uploaded to process a file, and there’s no tracking. When a document needs more than one signature, CutPDF routes it to each person in turn, with trusted timestamps, tamper checks and a full audit trail.

What we did
Product design, web and mobile development, signing backend
Platforms
Web today; iOS and Android coming soon
Built with
JavaScript, WebAssembly, Flutter, Supabase Edge Functions
Status
Live on the web
CutPDF with a lease agreement open and the Sign panel ready
files uploaded to sign, fill or OCR a PDF
0
backend tests passing
386
automated test files across web, mobile and backend
65
trusted timestamp authorities supported
4
01

the problem

Most e-signature tools start by uploading your document to someone else’s server. For leases, contracts and forms full of personal information, that is a privacy risk most people never agreed to.

And the simple jobs, like filling a printed form neatly or pulling text out of a scan, usually mean yet another upload to yet another website.

02

what we built

On your device

  • Draw a signature and place it on any page
  • Fill printed forms exactly into their boxes
  • Extract text with OCR, even from scans
  • Split, combine and password-protect PDFs

When others must sign

  • Signing in order or in parallel, routed by email
  • Bulk send: one document, many signers, a copy each
  • Public signing links for forms anyone can sign
  • A completion certificate and full audit trail
03

how it’s built

  • The browser does the work

    PDF rendering, signing and OCR all run in the browser tab. OCR uses Tesseract compiled to WebAssembly on the web, and Apple Vision or ML Kit on phones, so it works in airplane mode.

  • Keys that never leave the phone

    On mobile, the signing key lives in the Secure Enclave or Android Keystore. The certificate around it is built in the app, so no library ever holds the private key.

  • Tampering shows

    Every revision is kept, checked byte for byte as a valid incremental update of the last, and stamped with an RFC 3161 trusted timestamp.

  • A backend that can’t read your signature

    The signing service only routes documents, records the audit trail and proxies timestamps. It never touches the PDF’s cryptography, and an atomic database lock stops two parallel signers colliding.

  • JavaScript
  • WebAssembly
  • Tesseract.js
  • PAdES signatures
  • Flutter
  • Supabase Edge Functions
  • Deno
  • Postgres
  • Netlify

Next case study

ZARemote

want something like this?

Tell us what you want to build. A few lines on WhatsApp or email is plenty to start.