Desktop · PDF / AI

Iris PDF Studio

← Back to Applications

Overview

A personal, fully-local Flutter desktop app that actually edits PDFs: fill interactive AcroForm fields with live overlays, click anywhere to drop new text, and edit existing printed text inline — the app redacts the old span and reinserts the new one, echoing the original font, size, and colour. Plus find-and-replace across the whole document, annotations (highlight, sticky notes, freehand ink, signature/image stamps), and page management with drag-to-reorder thumbnails.

An Iris AI assistant rides along: summarize the document, chat with questions answered from its text, have Iris return the key passages and auto-highlight every match, or say "add John Smith on the signature line" and it proposes concrete edits you review in a confirm sheet before they're applied as normal undoable commands. Replies can be read aloud via the local Iris voice.

The editing model is non-destructive and fully undoable — every change is a command applied to a working copy, and the original file is never touched until you Save. Crucially, your file never leaves your machine: the PDF travels as bytes rather than as a path, so the backends don't have to be on the same computer — point Settings at a Tailscale address and edit local PDFs against the Iris box at home. Editing works even when the LLM backend is down; only the Ask-Iris features need it.

Tech Stack

FlutterPythonFlaskPyMuPDFNode.jsFastifyWebSocketOllamaGeminiTailscale

Key Features

  • Fill interactive AcroForm fields with live overlays
  • Type anywhere on a page, or edit existing text inline (font/size/colour echoed)
  • Find & replace across the whole document
  • Annotations: highlight, sticky notes, freehand ink, signature/image stamps
  • Page ops: rotate, delete, insert, extract, drag-to-reorder thumbnails
  • Ask Iris: summarize, chat, auto-highlight key sections, read aloud
  • "Edit for me" — natural-language instructions become reviewable, undoable edits
  • Non-destructive command model with full undo/redo; original untouched until Save
  • File never leaves your machine — bytes over HTTP, so backends can be remote (Tailscale)
  • Server-rendered page PNGs with an exact PDF-points ↔ pixels coordinate transform
  • Editing keeps working when the LLM backend is offline
  • In-app self-update: SHA-256-verified download, then swap-and-relaunch (Windows / Android)