A privacy-first, professional desktop PDF creator and editor studio built with Avalonia UI & QuestPDF.
⚠️ Early Development Stage: FryPDF is currently in an active early stage of development. While core document engines, offline tools, and vector editing are fully operational, some features or complex edge cases are actively being refined and will be continuously enhanced in upcoming releases. Feedback & issue reports are warmly welcomed!
- 📕 Dedicated PDF Reader: Pure reading mode with continuous vertical scroll, single-page fit, and two-page book spreads. Features eye-comfort themes (Daylight, Warm Sepia, Dark Night, High Contrast), real page thumbnails, table of contents/bookmarks tree, live text search with match jumping, review annotations (multi-color highlights, sticky notes, approval stamps), and a 1-click bridge to FryPDF Editor.
- 📖 Universal PDF File Editing: Open and deconstruct real-world
.pdffiles into fully editable visual canvas objects (grouped text, fonts, colors, embedded images, and AcroForms) with zero deserialization errors. - 🎨 Visual Document Canvas: Fluid zoom (25%–500%), page margins, smart snap-to-grid, viewport-centered smart placement, multi-element alignment, and layering.
- 📝 Interactive AcroForms: Text fields, checkboxes, radio buttons, dropdowns, combo boxes, and signature boxes with real-time formula recalculation and validation.
- 🖋️ Signature Studio: Type-to-sign with curated cursive calligraphy styles or draw custom vector signatures with smooth bezier curves.
- 📊 Dynamic Vector Charts: Horizontal Bar, Column, Line, Smooth Curve, Area, Donut, Pie, Radar, Scatter, Bubble, Candlestick, Waterfall, Polar charts, and extensible vector datasets.
- 📐 Vector Shapes & Drawing: Rectangles, pills, speech callouts, stars, arrows, measurement tools (pt/mm/cm/in), and freehand ink pen.
- 🔢 Legal Bates Numbering: Automated sequential page numbering with customizable prefixes, suffixes, digit padding, and 6-anchor positioning.
- 🛡️ Security & Redaction: AES-256 password protection, permission flags (copy/print prevention), and permanent pattern-based search-and-redact with FOIA exemption codes.
- 🔍 Preflight & Accessibility Audit: Built-in document health scanner checking for low contrast, missing alt text, unflattened form fields, and security vulnerabilities.
- ⚖️ Document Diff & Comparison: Side-by-side revision analyzer highlighting added, removed, and modified elements between project versions.
- 📄 Template Gallery & Community Registry: Built-in templates for Executive Resumes, Annual Reports, Invoices, Certificates, and Academic Papers.
- 💾 Dual-Format Persistence: Native
.frypdfJSON-based project files & standard binary.pdfdocuments.
PDFCreator/
├── src/
│ └── PdfEditorApp/ # Main Avalonia desktop application
│ ├── Assets/ # Embedded icons, fonts, templates
│ ├── Converters/ # XAML binding converters
│ ├── Models/ # Domain models & document state
│ ├── Services/ # Export engine, audit, persistence, undo/redo
│ ├── Styles/ # Theme palettes and UI styling
│ ├── Templates/ # Starter document templates
│ ├── ViewModels/ # Reactive MVVM ViewModels
│ └── Views/ # Avalonia XAML Windows, Views, and Dialogs
├── tests/
│ └── PdfEditorApp.Tests/ # Unit and integration test suite (xUnit)
├── docs/
│ ├── ARCHITECTURE.md # Architecture, MVVM design, and services
│ ├── FEATURES.md # Detailed feature catalog
│ └── CONTRIBUTING.md # Developer guidelines and setup
├── packaging/
│ ├── macos/ # macOS bundle templates & DMG creator
│ └── windows/ # Inno Setup installer & MSIX packaging
├── .github/workflows/ # GitHub Actions CI/CD release workflows
├── PdfEditorApp.slnx # Visual Studio / Rider solution file
├── run # Quick CLI runner script (./run)
└── watch # Quick CLI hot-reload script (./watch)
Using root helper scripts:
# Run application
./run
# Run with hot reload
./watchOr using dotnet CLI directly:
dotnet run --project src/PdfEditorAppdotnet testdotnet build -c Release- macOS: Standalone
FryPDF.appbundle and.dmgdisk image (Universal Apple Silicon & Intel).Note: If macOS Gatekeeper displays a quarantine or unverified developer notice after downloading from GitHub Releases, run this command in Terminal:
xattr -dr com.apple.quarantine "/Applications/FryPDF.app" - Windows: Official Microsoft Store verified app (
ms-windows-store://pdp/?productid=9P5GW2Q81B33), Inno Setup executable (FryPDF-Setup.exe), and winget package. - Linux: Portable
.tar.gzarchive, AppImage, or direct .NET 10 compilation.
Copyright © 2026 Code Fry Dev. All rights reserved. Developed with ❤️ using Avalonia UI and QuestPDF.
