DesktopmacOS · Windows · LinuxPublic beta

Your PDFs.
Private by default.

A premium, lightning-fast desktop editor. Everything runs locally — your documents never leave your device. Free for personal use.

12.4 MBmacOS 13+ · Win 10+ · Linux x86_64
P
PDFluent
Open PDF1/ 3⌘K
ReadEditConvertFill & Sign
100%
Form 1040 · 2025

U.S. Individual Income Tax Return

Department of the Treasury — Internal Revenue Service
Name
Jane Smith
SSN
123-45-6789

Under penalties of perjury, I declare that I have examined this return and accompanying schedules, and to the best of my knowledge they are true, correct, and complete.

Date
27 May 2026
Signature
01
Pure Rust
Memory-safe by design. No buffer overflows, no use-after-free.
02
100% local
No cloud, no telemetry, no account. Your files never leave your device.
03
Opens XFA
Reads complex dynamic forms (XFA) that other readers refuse to open.
The editor

One desktop app. Everything you actually do with a PDF.

Read mode in PDFluent
Read without friction.
Open even your heaviest files instantly. Calm reading, instant search, ⌘K command palette.
PPDFluentdocument.pdfOpen PDF
Read
Edit
Convert
Fill & Sign
Q4 Report
Edit & format.
Change text directly in your PDF — size, colour, styles. Add shapes, redact. No vendor lock-in.
PPDFluentdocument.pdfOpen PDF
Read
Edit
Convert
Fill & Sign
Personal data
NameJane Smith
SSN123-45-6789
DOB1986 · 03 · 14
GDPR-proof redaction.
Permanently erase sensitive data (like SSNs) — actually removed, not a black box. Strip hidden metadata in one click.
PPDFluentdocument.pdfOpen PDF
Read
Edit
Convert
Fill & Sign
Agreement
Name
Jane Smith
Date
2026 · 05 · 27
Signature
Forms & signing.
Fill AcroForm fields and open complex dynamic (XFA) forms that other readers choke on. Add certificate-based, tamper-evident PAdES signatures that cryptographically seal the document.
Validate & convert to PDF/A, OCR scans, export to Word or PNG.
All local — nothing uploaded. PDF/A-1b, 2b and 3b.
Convert
Show, don’t tell

Redaction that actually removes.

A black box on a screen is not redaction. PDFluent rewrites the PDF so the underlying text is permanently gone — not hidden behind a shape someone can drag away. Hidden metadata gets stripped in the same pass.

  • Text content actually erased — not overlaid.
  • Metadata, embedded fonts and JS stripped in one click.
  • Preview shows exactly what stays in the saved file.
Security · by construction

Built in pure Rust.

Memory-safe by design — no buffer overflows, no use-after-free. The same engine powers the desktop app and the SDK.

Memory-safeZero segfaultsPDF/A-1b / 2b / 3bPAdES B/T/LT/LTAAcroForm fillXFA flattenWASM build
~70%
of severe
security bugs

~70% of severe software security bugs are memory-safety flaws — independently reported by Microsoft and Google. PDFluent is built in Rust, which makes that entire class impossible: gone by design, not patched after the fact.

SOURCEMicrosoft Security Response Center·Google Chrome security
Price & reach

Free for you. Honest for everyone else.

Free
for personal use
Business: $49 / yr per user.
0 bytes
ever leave your device
No cloud, no account, no telemetry.
macOS · Windows · Linux
native, on every desk
One Rust engine, three platforms.
For comparisonAdobe Acrobat: ~$240 / yr. PDFluent: free for personal, $49 for business.
Buy a business license — $49/yrFree forever for personal use.
Libraryfor developers/sdk

Same engine, as a developer SDK.

Pure-Rust, memory-safe. Published to crates.io, PyPI, npm, NuGet and Maven Central — with WASM bindings for the browser.

crates.io·pdfluent
PyPI·pdfluent
npm·@pdfluent/core
NuGet·PDFluent
Maven Central·io.pdfluent:pdfluent
crates.io·pdfluent
PyPI·pdfluent
npm·@pdfluent/core
NuGet·PDFluent
Maven Central·io.pdfluent:pdfluent
main.rscargo add pdfluent
use pdfluent::{PdfDocument, XfaPolicy};

let mut doc = PdfDocument::open("tax-return-2025.pdf")?;
doc.acroform_fill("name", "Jane Smith")?;
doc.xfa_flatten(XfaPolicy::PreserveLayout)?;
doc.save_as("tax-return-2025-flat.pdf")?;
Explore the SDKQuickstart
What runs here — open · AcroForm fill · XFA flatten · save — is a real call, not pseudocode.