Skip to content
Home About Services Portfolio Blog Contact Get Started
AI & Automation

PdfCraft: The Open Source PDF Editor in Rust With 17,000+ GitHub Stars

Written by

MTD Technologies

Published
Read Time 11 min
Flat vector illustration of PdfCraft, the open source PDF editor in Rust

Every business runs on PDFs, and almost every business pays Adobe for the privilege of editing them. That is why an open source PDF editor in Rust has just pulled in 17,000+ GitHub stars in three weeks: PdfCraft is a clean-room PDF reader and editor written from scratch in pure Rust — no account, no telemetry, no subscription, and builds for macOS, Windows, Linux, FreeBSD, and the web. If you are a founder, an ops lead, or a developer who has ever winced at an Acrobat seat licence, this one deserves ten minutes of your time.

This is a deep dive into what PdfCraft actually does today, where it is genuinely strong, where it is honestly still alpha, and what the business case looks like for teams thinking about the Acrobat-alternative question. By the end, you will know whether to download it, whether to script it, and whether to wait for 1.0.

What PdfCraft is

PdfCraft is the PDF workbench from the same community behind ArtCraft — the group that has been shipping a wave of clean-room, pure-Rust desktop apps (Word, slides, photo and video editors have all had their turn, and we have covered several of them on this blog). The pattern is consistent: pick a proprietary desktop category, reimplement it from the open specification, release it dual-licensed under MIT or Apache-2.0, and ship native binaries everywhere.

The numbers at the time of writing: 17,019 stars, 6,555 forks, written entirely in Rust, first committed at the end of September 2026 and updated daily since. The maintainers’ own positioning is “the PDF workbench” — read, organise, combine, split, and secure PDFs in one fast native app. The project page is getartcraft.com/apps/pdfcraft; the source is the storytold/pdfcraft repo.

Two claims from the README set the tone for everything else. First, it is a clean-room implementation: behaviour comes from the ISO 32000 specification and black-box observation, never from anyone else’s code. That matters legally — it means a business can evaluate the licence (MIT or Apache-2.0, both permissive) without the usual provenance anxiety that hangs over PDF tools built on proprietary foundations. One caveat the project states openly: the ArtCraft name and logos are trademarks and are not open source, so forks must remove the branding. That is a branding rule, not a usage restriction.

Second, there is no account, no telemetry, and no cloud. It works fully offline and opens instantly. For anyone handling contracts, invoices, or client data, that sentence is worth more than most feature lists.

What it can do

Start with rendering, because PDF is a format where “viewing” is half the battle. PdfCraft’s engine handles the details that make a page feel right: kerning and ligatures, right-to-left and complex scripts, vertical CJK text, colour emoji, gradients, soft masks, and transparency. The showcase PDF demonstrates twelve writing systems on one page, plus vertical Japanese. For agencies and publishers dealing with multilingual documents, this is the part that separates real PDF tooling from toy viewers.

  • Reading: deep zoom that stays sharp (large pages render in tiles), continuous / single-page / two-up layouts, rotation, full screen, a distraction-free Read mode, and light and dark themes.
  • Finding and extracting: search with reading-order text extraction; damaged files are repaired automatically, and each page renders in isolation so one corrupt page cannot kill the document.
  • Organising: page thumbnails work like cards on a table — reorder, rotate, delete, move, and insert pages visually.
  • Combining and splitting: merge documents, extract ranges, split — with bookmarks and page labels preserved.
  • Securing: password protection with the standard security handler (RC4, AES-128/256, revisions 2–6), plus redaction and sanitising tools.
  • Collaborating: comments with threads, replies, status, and edits — highlight a phrase, annotate, restyle.
  • Forms: interactive forms, fill-and-author with regenerated appearances, and sandboxed JavaScript.
  • Signing: basic digital signatures; an accessibility checker; printing; OCR (“Scan & OCR”, with models fetched separately).

The reliability claim is unusual in how specific it is: across the 983-file pdf.js test corpus, the project reports zero crashes, with 963 files opening and rendering cleanly and 958 succeeding in open-edit-save round trips. Output is verified against independent implementations — hayro and qpdf on every CI run, poppler over the corpus on demand. We like this pattern. Vendors usually say “handles real-world files”; PdfCraft names the corpus, publishes the pass rate, and ships the harness. That is how serious engineering teams talk.

How it works: the agent angle

Here is the part most PDF editors miss, and the part that earned PdfCraft’s place on an AI-focused blog. Every engine feature is reachable without the GUI, through one table of JSON-Schema-described tools. Three front doors share it:

  • pdfcraft-cli run — one-off calls and JSON scripts. pdfcraft-cli run text_find doc=1 query=invoice, or a multi-step script file with a JSON report per step. With --root, every file the script touches stays inside one directory.
  • An MCP server — for AI agents such as Claude. This is the standout: it is opt-in (PdfCraft never starts it on its own and opens no network port), speaks over stdin/stdout, and --root confines the agent to one directory. A --compact flag shrinks the tool list to about ten core tools plus tool_search/tool_call so agents burn fewer tokens discovering capabilities.
  • The Rust API (pdfcraft_automation::Automation::call) — for embedding the engine in your own software.

You can even drive the desktop app itself: start it with pdfcraft --control ~/.pdfcraft-control.json and an agent gets the widget tree, clicks, typing, screenshots, and commands over a loopback channel gated by a random token. The README includes a pointed security note — keep the control file in a folder only you can write, because another user could plant a file in /tmp first and receive your commands. The CLI refuses symlinked control files and ones readable by other users. These are the details that tell you the team has thought about agent access as a security surface, not just a feature bullet.

For businesses, this is the real unlock. PDF pipelines — extracting invoice data, stamping documents, redacting reports, assembling contract packets — are the most boring and most valuable automation work there is. A scriptable, offline PDF engine with an agent-native interface is infrastructure, not just an app. If your team does document-heavy automation, our AI workflow automation work starts exactly here: replacing fragile GUI scripts with deterministic, auditable document pipelines.

Abstract illustration of PdfCraft AI agent CLI tools working with PDF documents

PdfCraft: the open source PDF editor in Rust, honestly assessed

Now the part that matters. The project maintains a target-app-parity document, and it is refreshingly candid: PdfCraft is alpha. Most essential offline PDF features exist in some form — 57% of tracked features, 94% of “core essentials” — but everyday-work readiness sits around 55%, and across all professional workflows about 49%.

Good today: viewing and search; organising, combining, and splitting; most comment types; filling and authoring forms; passwords, redaction, and sanitising; basic digital signatures; printing; the accessibility checker; agent control through the CLI and MCP.

Thin or missing: reliable editing of existing text (especially CJK and right-to-left scripts); OCR beyond Latin script; office-document import/export (no office-to-PDF, and .docx export that loses layout); signature tokens and online long-term validation; Preflight and PDF/X/UA profiles; full XFA forms; and the renderer itself is still borrowed — pages are drawn by the hayro crate while the team builds its own. Fuzzing still turns up crashes and hangs on hostile files; each gets fixed with a regression test.

Translate that into buying advice. If your need is “view, search, organise, comment, fill, sign, and script PDFs” — which covers the vast majority of office and ops workflows — PdfCraft is already usable and will get better fast; the commit history shows daily activity. If your need is “prepress-grade production PDFs,” “certified long-term-validation signatures,” or “full Office round-tripping,” you are not the alpha audience yet. Acrobat, Foxit, or a specialised toolchain stays on your desk for those jobs.

From our experience: the Acrobat-alternative cost case

We build internal tooling for clients all the time, and document workflows are where licence costs compound silently. Here is the honest arithmetic.

  • The seat-licence trap. Acrobat-style pricing makes sense when five people edit PDFs all day. It stops making sense when fifty people need to view, comment, and sign, and three developers need to automate document pipelines. PdfCraft’s model — free app for everyone, scriptable engine for the developers — matches how teams actually work.
  • Automation is the real saving. The licence you cancel is a few hundred dollars a seat. The contractor-hours you burn on fragile PDF automation (RPA clicks, brittle parsers, “it worked on my machine” scripts) are the five-figure problem. An offline engine with a JSON-schema tool surface and an MCP server attacks the expensive part directly: deterministic, testable document pipelines that agents can drive.
  • Do not skip the alpha discount. “57% of tracked features” means roughly half the edge cases are not there yet. Pilot it on one workflow — say, incoming invoice processing or contract packet assembly — and keep the incumbent installed for the rest. Measure for a month. We would never recommend a wholesale migration to alpha software, no matter how good the architecture is.
  • Watch the roadmap order. The team’s stated priorities are telling: office-document-to-PDF and layout-preserving .docx export first, then fidelity hardening against a reference renderer, then existing-text editing, then the professional stack (OCR, signatures, Preflight, accessibility tagging), then 1.0 polish. That is a business-first ordering — they know most teams need Office interchange before anything else.
  • The Rust dividend is real but boring. Pure-Rust, memory-safe PDF parsing matters less as marketing and more as operations: fewer crashes on hostile files (the corpus data backs this), no runtime to install, tiny startup, and a single static-ish binary your IT team can actually audit. Unsexy wins, real money.
Abstract illustration of PdfCraft clean-room Rust PDF engine rebuilt from scratch

A responsible-use note

Two things worth saying because PdfCraft ships exactly the features that carry responsibility.

First, redaction. PdfCraft ships redaction and document sanitising, which is precisely what teams handling legal, medical, or HR documents need — but it is alpha software. If a missed redaction would be a breach, verify the output (extract the text back out and check it) before you rely on it for anything sensitive, and keep a human review step until 1.0. The tool is the right shape; the trust comes from verification, not from the marketing copy.

Second, agent access. The CLI and MCP server are designed with good defaults — opt-in, no network ports, directory confinement — but agents with file access are agents with file access. When you script document pipelines, run them under --root confinement, keep the control-file hygiene the README demands, and treat PDF pipelines like any other production automation: versioned scripts, logged runs, and rollback. This is the same posture we apply in our agentic AI development engagements.

Getting started

Getting PdfCraft running is straightforward. Most people should start with the prebuilt binaries; developers can build from source.

  • 1. Grab a release. Each GitHub release has ready-made builds for macOS, Windows, Linux (AppImage, Flatpak, .deb, .rpm, tarball), FreeBSD, and the web. Download, install, open a PDF.
  • 2. Or build it. You need Rust 1.95 or later:
    git clone https://github.com/storytold/pdfcraft
    cd pdfcraft
    cargo xtask models        # OCR models for Scan & OCR (release builds include them)
    cargo run --release -p pdfcraft -- some.pdf
  • 3. Try the agent surface. pdfcraft-cli tools lists every tool and its JSON Schema. pdfcraft-cli run text_find doc=1 query=invoice runs one. A --script file chains steps with a per-step report.
  • 4. Wire it to your agent. Add {"command": "pdfcraft-cli", "args": ["mcp", "--root", "/path/to/your/pdfs"]} to your agent’s MCP configuration. Use --compact if tool-list tokens matter to your budget.
  • 5. Pilot one workflow. Pick the most painful repetitive PDF task your team has — invoice extraction, contract assembly, report redaction — and run PdfCraft alongside your incumbent for a month. Compare, then decide.

Browse the full AI Tools Directory for more open-source tools we have evaluated for business use.

Frequently asked questions

Is PdfCraft really free for business use?

Yes. It is dual-licensed under MIT or Apache-2.0, both of which permit commercial use, modification, and distribution. The one exception: the ArtCraft name and logos are trademarks, so if you fork or rebrand it, you must remove the branding. Using the app and the engine in your business is unrestricted.

Can PdfCraft replace Adobe Acrobat?

For most everyday workflows — viewing, searching, organising pages, commenting, filling and signing forms, combining and splitting, and scripting PDF pipelines — it is already a credible alternative. For prepress production, certified long-term signatures, full Office round-tripping, or editing existing text in CJK and right-to-left scripts, it is not there yet. The maintainers rate everyday readiness around 55% and are explicit that it is alpha.

How do I install PdfCraft?

Download a prebuilt release for macOS, Windows, Linux (AppImage, Flatpak, .deb, .rpm, tarball), FreeBSD, or use the web build. Developers can build from source with Rust 1.95 or later: git clone https://github.com/storytold/pdfcraft, then cargo run --release -p pdfcraft -- some.pdf. Run cargo xtask models first if you need the OCR models.

What does “agent-ready” actually mean here?

Every engine feature is exposed as a JSON-Schema-described tool reachable three ways: a CLI (pdfcraft-cli run) for scripts, an opt-in MCP server that AI agents like Claude can connect to over stdin/stdout (directory-confined with --root, token-lean with --compact), and a Rust API for embedding. You can script “extract all invoices over $10,000 and highlight the totals” as deterministic, auditable steps instead of GUI automation.

Is my data safe in PdfCraft?

The app has no account, no telemetry, and no cloud — it works fully offline, and saving appends incremental updates while leaving the original file bytes untouched (with deep undo and atomic writes). That is a strong privacy posture. The caveat is maturity: it is alpha, fuzzing still finds occasional crashes on hostile files, and for high-stakes redaction you should verify output until 1.0.

The PDF tooling market has been a monopoly tax for decades, and the open-source challengers have historically arrived either underpowered or abandonware. PdfCraft is neither: 17,000+ stars in three weeks, a clean-room Rust engine with published test data, an agent-native interface most commercial tools cannot match, and a roadmap that is honest about being alpha. Download it, pilot one workflow, and keep your incumbent for the edge cases. If your team is drowning in document pipelines, talk to us — building deterministic, offline PDF automation is exactly the kind of unglamorous work that pays for itself in a quarter.