Open-source pdf software
747 open-source libraries, tools and applications tagged pdf, ranked by how closely pdf is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
747 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| pdfme/pdfme pdfme is an open-source TypeScript PDF generation library with a React-based WYSIWYG template designer, form, and viewer. It uses JSON temp… | 100 | 4906 | active |
| Prawn PDF Generation Prawn is a pure Ruby library for programmatically generating PDF documents, offering vector drawing, text rendering, image embedding, and e… | 54 | 4822 | stable |
| danburzo/percollate Percollate is a Node.js command-line tool that converts web pages into readable, well-formatted PDF, EPUB, HTML, or Markdown documents. It … | 48 | 4686 | active |
| MuJing MuJing (幕境) is a free, open-source desktop application for learning English vocabulary through real context from movies, TV shows, and docu… | 54 | 4631 | active |
| cyanfish/naps2 NAPS2 is a free, open-source document scanning application for Windows, Mac, and Linux that supports WIA, TWAIN, SANE, and ESCL scanners an… | 99 | 4629 | active |
| torakiki/pdfsam PDFsam Basic is a free, open-source desktop application for splitting, merging, rotating, mixing and extracting pages from PDF files. It is… | 91 | 4594 | active |
| crabbly/Print.js Print.js is a tiny JavaScript library that helps printing from the web, supporting printing of PDF, HTML, image, and JSON content directly … | 62 | 4547 | stable |
| LibreOffice/core LibreOffice is a free, open-source office suite comprising Writer (word processing), Calc (spreadsheets), Impress (presentations), Draw (ve… | 77 | 4536 | stable |
| kaixindelele/ChatPaper ChatPaper is a Python tool that uses ChatGPT to summarize arXiv papers, translate full PDFs, polish academic writing, and simulate peer rev… | 59 | 19943 | maintenance |
| jonaslejon/malicious-pdf A Python CLI tool that generates 67 malicious PDF test files embedding callbacks for SSRF, XSS, XXE, NTLM credential theft, and data exfilt… | 91 | 4483 | active |
| Snappy Snappy is a PHP library that wraps the wkhtmltopdf and wkhtmltoimage binaries to generate PDFs, snapshots, or thumbnails from URLs or HTML … | 86 | 4475 | stable |
| LibrePDF/OpenPDF OpenPDF is an open-source Java library (LGPL/MPL licensed, forked from iText 4) for creating, editing, rendering, and encrypting PDF docume… | 92 | 4378 | active |
| kevin2li/PDF-Guru PDF Guru Anki is a cross-platform desktop and mobile application that combines a comprehensive PDF toolbox with deep Anki integration, conv… | 27 | 4228 | active |
| 027xiguapi/code-box CodeBox is a browser extension for Chrome, Edge, Firefox, and 360 browsers that enhances Chinese tech blog sites like CSDN, Zhihu, Juejin, … | 57 | 4150 | active |
| ethanwillis/zotero-scihub A Zotero/Juris-M add-on that automatically downloads PDFs for library items with a DOI from Sci-Hub. It adds a context menu action and auto… | 86 | 4134 | active |
| SteveTheKiller/KillerPDF KillerPDF is a free, open-source (GPL-3.0) PDF editor for Windows built with C# and WPF, offering viewing, annotation, OCR, form filling, s… | 81 | 4094 | active |
| portfolio-performance/portfolio Portfolio Performance is an open-source desktop application for tracking and evaluating investment portfolios across multiple accounts and … | 90 | 4075 | active |
| Hacker233/resume-design Maobu Resume (猫步简历) is an open-source, free online resume builder built with Vue 3, TypeScript, Vite, Element Plus, and Pinia. It offers tw… | 57 | 4063 | active |
| giuspen/cherrytree CherryTree is a hierarchical note-taking desktop application featuring rich text editing and syntax highlighting, storing data in a single … | 93 | 3967 | active |
| Paper2Poster/Paper2Poster Paper2Poster is an open-source multi-agent system (PosterAgent) that converts scientific paper PDFs into editable PowerPoint posters using … | 55 | 3951 | active |
| mohuangrui/ucasthesis ucasthesis is a LaTeX thesis template for bachelor's, master's, and doctoral degree theses at the University of Chinese Academy of Sciences… | 23 | 3907 | stable |
| salomonelli/best-resume-ever A Vue.js-based web application for building multiple beautiful resumes/CVs from templates and exporting them as PDFs. It offers many prebui… | 32 | 16482 | maintenance |
| HKUDS/Paper2Slides Paper2Slides is a Python application that converts research papers, reports, and documents into professional presentation slides and poster… | 50 | 3840 | active |
| camelot-dev/camelot Camelot is a Python library for extracting tabular data from PDFs, offering five parsers including heuristic (lattice, stream), text-alignm… | 92 | 3838 | active |
| OXY2DEV/markview.nvim A hackable Neovim plugin that renders live previews of Markdown, LaTeX, Typst, inline HTML, YAML, and AsciiDoc directly inside the editor. … | 82 | 3647 | active |
| GordenSun/GordenPPTSkill An AI-agent skill and Python toolkit for building PowerPoint presentations from 17 hand-polished Chinese PPTX templates using python-pptx. … | 50 | 3631 | active |
| open-xml-templating/docxtemplater Docxtemplater is a JavaScript library that generates Word (.docx), PowerPoint (.pptx), Excel (.xlsx), and OpenDocument (.odt) files from te… | 66 | 3629 | stable |
| lookscanned/lookscanned.io LookScanned.io is a pure frontend web application that transforms PDFs (and other documents) so they look like scanned copies, with adjusta… | 34 | 3601 | active |
| mileszs/wicked_pdf Wicked PDF is a Ruby on Rails plugin that generates PDF files from HTML views by wrapping the wkhtmltopdf shell utility. Developers write n… | 34 | 3571 | stable |
| borb borb is a pure Python library for reading, creating, and manipulating PDF files, modeling documents in a JSON-like structure with a high-le… | 88 | 3570 | active |
| CosmosShadow/gptpdf A small Python library that parses PDF files into Markdown using a vision-capable LLM such as GPT-4o. It uses PyMuPDF to detect non-text ar… | 28 | 3559 | active |
| scanny/python-pptx python-pptx is a Python library for creating, reading, and updating PowerPoint (.pptx) files using the Open XML format. It generates presen… | 32 | 3544 | stable |
| wkhtmltopdf wkhtmltopdf and wkhtmltoimage are open-source (LGPLv3) command line tools that render HTML into PDF and various image formats using the Qt … | 10 | 14556 | maintenance |
| deepdoctection deepdoctection is a Python library for Document AI that orchestrates document layout analysis, table recognition, OCR, and document/token c… | 96 | 3261 | active |
| echohive42/AI-reads-books-page-by-page A Python script that reads PDF books page by page, using AI to extract knowledge points and generate progressive summaries at configurable … | 58 | 3217 | active |
| InvoicePlane/InvoicePlane InvoicePlane is a free, self-hosted web application for managing quotes, invoices, clients, and payments, built in PHP on CodeIgniter. It t… | 89 | 3208 | active |
| blazickjp/arxiv-mcp-server A Model Context Protocol (MCP) server that lets AI agents search, download, and analyze arXiv papers, including reading original LaTeX sect… | 88 | 3202 | active |
| CatchTheTornado/text-extract-api A self-hosted FastAPI-based API that converts PDFs, Office documents, and images into Markdown or structured JSON using OCR engines (EasyOC… | 42 | 3183 | active |
| klaudiosinani/tusk Tusk is an unofficial, open source, cross-platform Evernote desktop application with themes, focus modes, and customizable keyboard shortcu… | 59 | 3155 | active |
| Filimoa/open-parse Open Parse is a Python library that visually parses complex documents (primarily PDFs) into semantically meaningful chunks for LLM and RAG … | 61 | 3148 | active |
| kane50613/takumi Takumi is a Rust-based rendering engine that converts JSX, HTML, and CSS into images (PNG, JPEG, WebP, SVG, animated GIF/WebP) and paged PD… | 83 | 3134 | active |
| apache/pdfbox Apache PDFBox is an open source Java library for working with PDF documents, supporting creation, manipulation, and content extraction. It … | 76 | 3127 | stable |
| unidoc/unipdf UniPDF is a pure Go library for creating, reading, and processing PDF files, including report generation, form filling, digital signatures,… | 91 | 3122 | active |
| LibreScore dl-librescore is a set of tools (app, userscript, CLI, and website) for downloading sheet music from MuseScore as MSCZ, MIDI, MP3, or PDF, … | 74 | 3118 | active |
| FastReport FastReport is a free, open-source, band-oriented report generator library for .NET 6/.NET Core/.NET Framework written in C#. It lets applic… | 88 | 3100 | active |
| AnyListen/tools-ocr Tree Hole OCR is a cross-platform desktop OCR tool built with Java and JavaFX that performs offline text recognition using Paddle OCR model… | 23 | 3063 | active |
| ArtifexSoftware/mupdf MuPDF is a lightweight open-source C library and toolkit for viewing, rendering, parsing, and converting PDF, XPS, and e-book documents. It… | 76 | 2989 | stable |
| NVIDIA/NeMo-Retriever NVIDIA's scalable document content and metadata extraction library (also known as NVIDIA Ingest) that splits documents, classifies and extr… | 82 | 2978 | active |
| signintech/gopdf gopdf is a Go library for programmatically generating PDF documents. It supports Unicode font embedding, drawing shapes and images, text al… | 77 | 2939 | active |
| ciur/papermerge Papermerge is an open source document management system (DMS) designed for scanned documents and digital archives. It performs OCR on PDF, … | 10 | 2933 | active |
| MuiseDestiny/zotero-reference A Zotero add-on that extracts and displays the references of the PDF you are reading in a floating panel. It supports multiple data sources… | 70 | 2815 | active |
| pikepdf/pikepdf pikepdf is a Python library for reading, writing, repairing, and transforming PDF files, built on the mature qpdf C++ library. It supports … | 96 | 2807 | active |
| imanoop7/Ollama-OCR A Python package and Streamlit web app that performs OCR on images and PDFs using vision language models served through Ollama. It supports… | 23 | 2780 | active |
| johnfercher/maroto Maroto is a Go library for generating PDFs using a Bootstrap-inspired grid system of rows, columns, and components, built on top of gofpdf.… | 98 | 2769 | active |
| pionxzh/chatgpt-exporter A Tampermonkey userscript that adds export functionality to the ChatGPT web interface, letting users save and share their conversation hist… | 97 | 2762 | active |
| barryvdh/laravel-snappy A Laravel service provider wrapping the KnpLabs Snappy library to generate PDFs and images from HTML via wkhtmltopdf/wkhtmltoimage binaries… | 73 | 2755 | active |
| elapouya/python-docx-template A Python library that lets you use Microsoft Word .docx files as Jinja2 templates to generate documents. It combines python-docx with Jinja… | 70 | 2721 | stable |
| dnl-blkv/mcdowell-cv A LuaLaTeX document class implementing Gayle L. McDowell's clean, space-efficient CV/resume design. It provides commands for headers, conta… | 23 | 2710 | stable |
| chrome-php/chrome A PHP library for controlling headless Chrome/Chromium browsers via the DevTools protocol, supporting both synchronous and asynchronous usa… | 83 | 2681 | active |
| ningzimu/image-to-editable-ppt-skill A Codex skill that converts slide images, PDFs, and image-based PPTX files into fully editable PowerPoint decks. It normalizes inputs into … | 78 | 2667 | active |
| kordoc kordoc is a TypeScript CLI and MCP server that parses Korean document formats (HWP 3.x/5.x, HWPX, HWPML, PDF, XLS/XLSX, DOCX, and images wi… | 79 | 2629 | active |
| samizdatco/skia-canvas A Node.js library implementing the HTML Canvas drawing API on top of Google's Skia graphics engine, with a Rust/N-API core. It supports bit… | 78 | 2603 | active |
| SysReptor SysReptor is a customizable pentest reporting platform for penetration testers and red teamers, supporting report design in HTML, writing i… | 97 | 2592 | active |
| UglyToad/PdfPig PdfPig is a C#/.NET library for reading and extracting text, images, annotations, forms, and metadata from PDF files, ported from Apache PD… | 89 | 2588 | active |
| wxyhgk/retain-pdf RetainPDF is an open-source PDF translation tool that preserves layout, formulas, and document structure, with special support for scanned/… | 82 | 2580 | active |
| Onedoc react-print-pdf is an open-source React component library for building and generating PDF documents using reusable, unstyled components and… | 26 | 2562 | active |
| simonbengtsson/jsPDF-AutoTable A jsPDF plugin that generates PDF tables in JavaScript, either from HTML table elements or from JavaScript data. It supports themes, column… | 79 | 2541 | stable |
| chatdoc-com/OCRFlux OCRFlux is a Python toolkit built on a 3B-parameter vision-language model that converts PDFs and images into clean Markdown, handling compl… | 50 | 2532 | active |
| facebookresearch/nougat Nougat is Meta's neural OCR model that parses academic PDFs into structured Markdown, understanding LaTeX math and tables. It ships as a Py… | 20 | 10082 | maintenance |
| latex3/latex2e The LaTeX2e kernel is the core source code of the LaTeX document preparation system, maintained by the LaTeX Project. It provides the base … | 94 | 2490 | active |
| RyotaUshio/obsidian-pdf-plus PDF++ is an Obsidian.md community plugin that upgrades Obsidian's built-in PDF viewer into a full annotation and viewing tool. It lets user… | 43 | 2479 | active |
| ossappscollective/OSS-DocumentScanner OSS Document Scanner is a free, open-source, privacy-focused mobile app for scanning documents with automatic edge detection, editing, OCR,… | 92 | 2472 | active |
| hithesis/hithesis hithesis is a LaTeX thesis template package for Harbin Institute of Technology covering all three campuses. It supports bachelor, master, a… | 88 | 2458 | active |
| openpaperwork/paperwork Paperwork is a personal document manager for Linux and Windows that scans, OCRs, indexes, and organizes paper documents. It provides keywor… | 10 | 2433 | active |
| astefanutti/decktape Decktape is a command-line tool that converts HTML presentation frameworks (like reveal.js, impress.js, and others) into high-quality PDF d… | 72 | 2431 | active |
| xhtml2pdf/xhtml2pdf xhtml2pdf is a pure-Python library that converts HTML and CSS (HTML5, CSS 2.1, partial CSS 3) into PDF documents using ReportLab, html5lib,… | 97 | 2396 | active |
| docx4j docx4j is an open-source (Apache v2) Java library for creating, editing, and saving Microsoft OpenXML packages, including Word docx, PowerP… | 77 | 2385 | active |
| hacksalot/HackMyResume A Node.js command-line tool that generates polished résumés and CVs in multiple formats (HTML, Markdown, LaTeX, MS Word, PDF, plain text, J… | 23 | 9331 | maintenance |
| SwiftLaTeX/SwiftLaTeX SwiftLaTeX compiles the PdfTeX and XeTeX LaTeX engines to WebAssembly so LaTeX documents can be compiled entirely in the browser, exposed a… | 23 | 2320 | active |
| chezou/tabula-py tabula-py is a Python wrapper around tabula-java that extracts tables from PDF files into pandas DataFrames. It can also convert PDFs direc… | 23 | 2317 | stable |
| hua1995116/react-resume-site Muji Resume is an online resume builder that lets users write resumes in Markdown and render them into polished templates with live PDF pre… | 32 | 2311 | active |
| J-F-Liu/lopdf lopdf is a Rust library for low-level PDF document manipulation, supporting creating, parsing, editing, and merging PDF files. It offers op… | 98 | 2281 | stable |
| apache/poi Apache POI is a Java library for reading and writing Microsoft Office documents in both OLE2 binary formats (XLS, DOC, PPT) and Office Open… | 76 | 2277 | stable |
| MarkPDFdown MarkPDFDown is a Python CLI tool that converts PDF documents and images into clean Markdown using multimodal large language models via Lite… | 72 | 2272 | active |
| iText iText is a high-performance PDF library/SDK for Java and .NET that lets developers create, manipulate, inspect, sign, and secure PDF docume… | 95 | 2260 | stable |
| flyingsaucerproject/flyingsaucer Flying Saucer is a pure-Java library that renders well-formed XML/XHTML using CSS 2.1 layout and formatting. It outputs rendered documents … | 99 | 2239 | active |
| dotnetcore/Magicodes.IE Magicodes.IE is a .NET library for importing and exporting data via DTOs, supporting Excel, CSV, Word, PDF, and HTML formats with template-… | 61 | 2237 | active |
| invoice-x/invoice2data A Python library and CLI tool that extracts structured data from PDF invoices using pluggable text-extraction backends (including OCR) and … | 96 | 2235 | active |
| pdf-lib pdf-lib is a pure JavaScript/TypeScript library for creating and modifying PDF documents in any JavaScript runtime, including Node, browser… | 23 | 8661 | maintenance |
| modesty/pdf2json A Node.js module that converts binary PDF files into structured JSON and text, built on top of Mozilla's pdf.js. It extracts text content a… | 91 | 2211 | active |
| maaslalani/invoice A command-line tool written in Go that generates PDF invoices from CLI flags, environment variables, or JSON/YAML config files. It supports… | 20 | 2197 | active |
| OmGodse/Notally Notally is a lightweight, minimalist notes app for Android built with Kotlin and Material Design. It supports rich text notes, images, labe… | 70 | 2176 | active |
| drunkdream/weread-exporter A Python CLI tool that exports books from WeChat Read (微信读书) into epub, pdf, and mobi formats. It hooks into the web reader's Canvas render… | 61 | 2163 | active |
| Crater Crater is an open-source, self-hosted invoicing application for individuals and businesses, built with Laravel and Vue.js, with companion R… | 23 | 8352 | maintenance |
| scambier/obsidian-omnisearch Omnisearch is an Obsidian community plugin providing instant, relevance-weighted full-text search across notes, PDFs, Office documents, and… | 91 | 2155 | active |
| ustctug/ustcthesis A LaTeX template (ustcthesis) for writing undergraduate and graduate theses at the University of Science and Technology of China, conformin… | 93 | 2129 | active |
| carboneio/carbone Carbone is a fast report and document generator that merges JSON data into templates created in Word, Excel, PowerPoint, LibreOffice, HTML,… | 63 | 2119 | active |
| GongRzhe/Office-Word-MCP-Server A Model Context Protocol (MCP) server that lets AI assistants create, read, format, and manipulate Microsoft Word (.docx) documents through… | 10 | 2108 | active |
| deusyu/translate-book An agent skill for Codex, Claude Code, and OpenClaw that translates entire books in PDF, DOCX, or EPUB format into any language. It convert… | 58 | 2107 | active |
| arcsin1/oh-my-ppt Oh My PPT is a local-first, open-source desktop application (Electron + React + TypeScript) that uses AI to generate editable HTML-based pr… | 80 | 2104 | active |