open-pdf-studio is a free, open source office suites project written in HTML and released under LGPL-3.0. It has 1,005 GitHub stars, 102 forks and 59 open issues, and was last pushed 11 hours ago. On this registry it ranks #16 of 19 tracked projects in Office Suites, with 5 head-to-head comparisons available.

What is open-pdf-studio?

Open PDF Studio is an open-source PDF viewer and editor with its own Rust engine, made for architects, engineers, contractors and other drawing and document reviewers on Windows, macOS, Linux, Android and in the browser.

What it is

Open PDF Studio is a free, open-source PDF editor under LGPL-3.0-or-later, listed in Productivity & Utilities / Office Suites. Its README describes it as a PDF editor for architects, engineers, contractors and everyone else who reviews drawings and documents. It runs on Windows, macOS and Linux as a desktop app, on Android, and in the browser. The desktop app adds features that need the local computer: printing, OCR, DWG and DXF import and export, digital signatures and a local AI connection through MCP.

The concrete problem it solves is drawing and document review without a subscription, account, telemetry or watermark. Users can mark up a PDF, measure with the scale the drawing carries, compare revisions, place symbols, count quantities and organise pages. It replaces a subscription PDF editor for drawing review in the AEC, BIM and construction workflows indicated by its topics; the browser version keeps the document in the browser, although a page reload starts empty.

Key capabilities

  • Mark up drawings with revision clouds, callouts, hatches, stamps and symbol libraries, with a Format tab and properties for the selected object.
  • Measure distances to the scale the drawing carries, alongside quantity counting and page organisation.
  • Compare revisions of a PDF so changes can be reviewed against an earlier version.
  • Import and export DWG and DXF files, print, run OCR and apply digital signatures in the desktop app.
  • Connect a local AI client through MCP; the release includes open-pdf-studio.mcpb, and the repository lists 94 MCP tools in mcp-stdio/tools.json.
  • Use the browser version with the same ribbon, markup, measuring, compare, symbol and page tools as the desktop app; desktop-only buttons are switched off and explain why.
  • Work in 40 languages, with locale files under open-pdf-studio/js/i18n/locales/.

Who uses it and how

  • Architects, engineers and contractors reviewing drawings use markup, scale measurement, revision compare and symbol placement in one PDF workflow.
  • AEC, BIM and construction teams that need drawing review without a subscription, account or watermark are the audience named by the README and topics.
  • Desktop reviewers who need printing, OCR, DWG/DXF import and export, digital signatures or local MCP AI must use the desktop app, which the README marks as desktop-only.
  • Mobile reviewers on 64-bit ARM Android devices can install open-pdf-studio-release.apk, but the app does not update itself.
  • Browser users can open a PDF at the hosted version with nothing to install, and organisations can self-host the web build from open-pdf-studio-web- .tar.gz.

Getting started

Try the hosted browser version at open-pdf-studio.open-aec.com, or download a release from the releases page: …_x64-setup.exe, …_x64_user-setup.exe or …_x64_portable.zip for Windows; …_universal.dmg for macOS; .deb, .AppImage or .snap for Linux; and open-pdf-studio-release.apk for Android. Linux users can also install from the Snap Store or use the Nix flake, and self-hosters can deploy the open-pdf-studio-web- .tar.gz web bundle.

How it compares

The supplied facts do not name any comparable PDF editor or drawing-review tool, so this entry stands alone in this registry. The README distinguishes the project from subscription, account-bound and watermarked PDF editors in general, but it does not identify individual products or provide a side-by-side comparison.

When to use it — and when not

Choose the desktop app when the workflow needs printing, OCR, DWG/DXF import and export, digital signatures or local MCP AI, because the browser build switches those desktop-only buttons off. A self-hoster must host the open-pdf-studio-web- .tar.gz bundle; the facts mention no database, storage or SMTP stack, and browser users should expect the document to stay in the browser and a page reload to start empty. The Android app does not update itself and each APK release is signed with a new key, a current limitation in the README, so teams that require self-updating Android installs should not pick it.

project readme (upstream, from github) — read inline

English · Nederlands

Open PDF Studio

A free, open-source PDF editor for people who work with drawings: markup, measuring to scale, revision compare and CAD import, on Windows, macOS, Linux, Android and in the browser.

Release CI License Languages MCP tools

Try in your browser  ·  Download

A floor plan with a revision cloud, a callout and a measured distance; the Format tab and the properties of the selected callout are open

Open PDF Studio is a PDF editor for architects, engineers, contractors and everyone else who reviews drawings and documents. You mark up, measure with the scale the drawing carries, compare revisions, place symbols, count quantities and organise pages, with no subscription, account or watermark.

It runs as a desktop app on Windows, macOS and Linux, as an Android app, and in your browser with nothing to install. The desktop app adds what needs your computer: printing, OCR, DWG and DXF import and export, digital signatures and a local AI connection (MCP).

Try it

Open the browser version and open a PDF from your computer. You get the same ribbon, markup, measuring, compare, symbol and page tools as in the desktop app. Your document stays in your browser and is not uploaded; a page reload starts empty. Buttons for desktop-only features are switched off and say why.

Download

Every release is on the releases page.

Platform Files
Windows …_x64-setup.exe (all users, needs admin), …_x64_user-setup.exe (current user only), …_x64_portable.zip (no install, details)
macOS …_universal.dmg (Apple silicon and Intel, macOS 10.15 or later)
Linux .deb, .AppImage and .snap for x86_64, also in the Snap Store; Nix flake. See docs/install-linux.md
Android open-pdf-studio-release.apk (64-bit ARM)
Other open-pdf-studio.mcpb (AI connection for MCP clients), open-pdf-studio-web-.tar.gz (web version to host yourself); from the next release also winget manifests and the Python library

Updates. The Windows installers, the macOS app, the .deb and the AppImage check for updates and install them through the built-in updater, which only accepts updates signed with the project's update key. The snap updates through the Snap Store. The portable version and the Android app do not update themselves.

Signing. The Windows installers and the program files they install are Authenticode-signed with Azure Trusted Signing; the release workflow installs the signed installer and checks every signature. The macOS app is signed with a Developer ID and notarized by Apple; the workflow checks it with codesign, spctl and stapler. The Linux packages carry only the update signatures (.sig) that the built-in updater checks, no OpenPGP signature. The Android APK is signed, but with a new key for every release (see Current limitations). The portable zip and the web bundle come with a .sha256 file.

Why use it?

  • Free and open. LGPL-3.0-or-later. No licence fees, no account, no telemetry and no watermark (PRIVACY.md).
  • Made for drawings. Clouds, callouts, hatches, stamps and symbol libraries, and printing to scale on sheets up to A0.
  • Measure to scale at once. A drawing that carries its own scale, such as a CAD plot or an imported DWG, measures correctly without calibrating.
  • See what changed. Compare two revisions side by side or on top of each other, with a list of every change.
  • CAD in and out. Import DWG and DXF as a vector PDF with layers and a measuring scale, and export a page back to DXF or DWG (desktop).
  • Works with an AI assistant. A local MCP server with 94 tools lets an assistant open, mark up, measure and save documents for you (desktop).
  • Everywhere. Windows, macOS, Linux, Android and the browser, in 40 languages.

Screenshots

Area, perimeter and two distances measured on a floor plan at scale 1:50, Default theme Measuring with the scale of the drawing Two revisions of a floor plan on top of each other, with the moved wall highlighted and a list of 18 changes Comparing two revisions
Fire safety symbols from the NEN 1414 library placed on a floor plan, with the symbol palette open Symbols from the palette The Edit Pages window with six pages: a cover, two floor plans and three pages of text Organising pages
Search results for "wall" in the text and the annotations, theme Dark Searching text and annotations, theme Dark The View tab with the window split in two: a floor plan on the left and the specification on the right, theme Blue Split view, theme Blue

The screenshots come from the browser version with demo PDFs that the script makes itself: open-pdf-studio/scripts/generate-readme-screenshots.mjs.

Markup and measuring

  • Markup. Highlights, shapes, clouds, callouts, text boxes, sticky notes, freehand, stamps, images and signatures, with styles, layers and alignment tools.
  • Measuring. Distance, area, perimeter and angle, to the scale in the drawing or a scale you calibrate, with snapping to the drawing.
  • Quantities. Count objects by category and collect counts, lengths and areas in a schedule that you place on the page or export as CSV.
  • Redaction. Removes the text, images and vectors under the marked area from the file, not just from view.

The full list is in docs/features.md.

Documents and pages

  • Pages. Insert, delete, extract, split, rotate, reorder and merge; straighten a skewed scan or shift page content.
  • Forms, bookmarks and attachments. Fill and create form fields, edit bookmarks, manage attachments.
  • Watermarks, headers and footers with page numbers and dates.
  • Search in the page text and in annotations, with a result list per page.
  • Keyboard shortcuts that you can change, including a preset with single-letter markup keys: docs/keyboard-shortcuts.md.

Desktop features

  • CAD. DWG and DXF import with layers, viewports and a measuring scale, and export of a page to DXF or DWG.
  • Printing to scale on large sheets, with a live preview and Save as PDF.
  • OCR to make scans searchable.
  • Digital signatures: validation with the certificate chain, and signing.
  • Managed installs with OPENAEC_BEHEERD=1 and a fixed start folder: docs/managed-deployments.md.

Interoperability

Format Open / import Save / export
PDF Yes, including forms (AcroForm, XFA) and layers Yes; PDF/A validation and saving, PDF/X export, raster PDF, flattened copy
XFDF Annotations Annotations
BCF 2.1 Issues as annotations Annotations as issues
DWG, DXF Yes, as a vector PDF (desktop) A page with its layers and markups (desktop)
IFCX (IFC5 JSON) No Yes, beta (docs/ifcx-export.md)
PNG, JPEG As an image on a page Pages, at 72 to 600 DPI
DOCX, ODT, XLSX No Text and tables
CSV No Quantities schedule

What does not survive: XFDF and BCF carry annotations only, not the page content. A flattened copy leaves out form field values. DOCX, ODT and XLSX get the text and tables, and complex layouts may need correction. PDF/X keeps standard fonts that are not embedded as they are. What IFCX keeps and loses is listed in docs/ifcx-export.md.

MCP

The desktop app has a built-in MCP server, so an AI assistant can work with your documents: open and save files, navigate, create and edit annotations, set the measuring scale, take off quantities, import and export CAD and print to a PDF file. It has 94 public tools.

You stay in control. The server is on for a new installation and listens only on your own computer (127.0.0.1, port 9223); switch it off or change the port under Settings > General. The status bar shows when an assistant is connected and which tool it used last. open-pdf-studio.mcpb from the release installs the connection in MCP clients that support .mcpb bundles; mcp-stdio/README.md explains the bridge for other clients. A Python library drives the same tools from a script.

Testing and reliability

  • 746 unit test files run with npm run test:unit on Windows, Linux and macOS in CI for every pull request, plus 3 quality regression test files (npm run test:quality).
  • CI builds the app on all three desktop platforms and starts it: the AppImage on Debian 13, Fedora 44 and in OpenAEC Linux conditions, and the macOS app. It also tests the Python library, lints the Flatpak when it changes, and loads the hosted web bundle in headless Chromium under a strict content security policy.
  • Pull requests that touch rendering also run a render regression on a large-format drawing and keep the report (render-regression.yml).
  • Releases are checked before they are published. The release workflow installs the signed Windows installer and checks every signature, starts the portable zip, and verifies the macOS signature, notarization and start-up.
  • Privacy is tested. A unit test fails when the shipped source contains an internet address that PRIVACY.md does not list, or when a telemetry package is added.
  • README images are checked. node open-pdf-studio/scripts/check-readme-images.mjs fails when an image is missing, unused or larger than 150 kB.

Count sources: unit test files are the non-comment lines of open-pdf-studio/scripts/unit-testlijst.txt; quality tests are the test:quality script in open-pdf-studio/package.json; MCP tools are the entries in mcp-stdio/tools.json; languages are the folders in open-pdf-studio/js/i18n/locales/.

Current limitations

  • Linux packages up to 2026.44.8 render without the worker pool. They lacked the pdfium-worker sidecar, so every page rendered in-process and large documents were slow (#923). The fix is on main and ships with the next release.
  • On some Linux systems the app can still crash while zooming. Lowering the realtime limit removed one cause; the issue stays open for the rest (#924, workarounds in docs/install-linux.md).
  • An Android update does not install over the previous version. Every release signs the APK with a new key, so Android refuses the update; uninstall the old version first (#601). The Android app has no OCR and renders with PDF.js.
  • The browser version has no desktop features. Printing, OCR, CAD import and export, compression, PDF/X, IFC export, document protection, extensions, updates, the MCP server and signature validation need the desktop app.
  • Some virus scanners flag the Windows installer. The installers are signed, but a new release has little reputation with the virus scanner built into Windows and similar scanners at first (#761, docs/windows-distribution.md).
  • Printing to some third-party virtual PDF printers crashes that printer's own program (#699).
  • Only x86_64 on Windows and Linux. A Windows on ARM build exists only as an experimental workflow, there is no .rpm, and the Flatpak is not on Flathub yet (docs/flathub.md).
  • The Table button on the Drawing tab is not available yet. Place a quantities schedule as a table instead.

Found something? Open an issue.

Under the hood

The app is a Tauri 2 desktop app with a Rust back end and a SolidJS front end built with Vite. Pages render through a multi-process PDFium worker pool, off the UI thread and isolated from crashes, with progressive tiles for very large drawings; the browser and Android versions render with PDF.js, which also provides the text layer. pdf-lib writes the PDF changes. The browser version is the same front end built without the Tauri shell. The licences of all components are in LICENSING.md.

Contributing

  • Report a bug or ask for a feature as an issue. Describe what you did, what you expected and what happened. Because the code moves quickly, a precise issue is often more useful than a pull request.
  • Share symbol libraries and other content. Pull requests with symbol sets, hatch patterns and similar content from your country or discipline are very welcome.
  • Write code. Read CONTRIBUTING.md first.

We are looking for someone to maintain the extensions and the content repository: curating incoming symbol libraries and keeping the catalogue organised. If that is you, open an issue to introduce yourself.

Quick start (developers)

git clone https://github.com/OpenAEC-Foundation/open-pdf-studio.git
cd open-pdf-studio/open-pdf-studio
npm ci
npm run tauri:dev

Requires Node.js 22, Rust stable, CMake and a C/C++ toolchain, plus the WebKitGTK development packages on Linux. Details, release builds, the web version and tests are in docs/building.md.

Versions follow the OpenAEC scheme YYYY.W.N: year, ISO week without a leading zero, and a number within the week that starts at 0, such as 2026.44.8.

Open PDF Studio is part of the OpenAEC Foundation family of apps.

License

Open PDF Studio is licensed under the GNU Lesser General Public License v3.0 or later. The LGPL builds on the GNU General Public License v3.0, whose text ships alongside it. LICENSING.md explains what that means in plain language, lists the licence of every component and of the third-party components the app ships with, and answers the AGPL question around the MuPDF dependency.

Frequently asked questions

Is open-pdf-studio free to use?

open-pdf-studio is open source under the LGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does open-pdf-studio do?

An open source PDF viewer/editor with it's own blazing fast rust engine

What is open-pdf-studio written in?

open-pdf-studio is primarily written in HTML. Its source is publicly available at https://github.com/OpenAEC-Foundation/open-pdf-studio, and it has 1,005 GitHub stars.