Open-source pdf software
504 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.
504 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| 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 |
| deepseek-ai/DeepSeek-OCR-2 DeepSeek-OCR 2 is an open-source vision-language model and inference toolkit implementing 'Visual Causal Flow' for optical character recogn… | 42 | 3471 | active |
| 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 |
| shiyi-0x7f/o-lib Olib is a free, open-source cross-platform desktop e-book client built with Tauri 2 (Rust backend + React/TypeScript frontend). It provides… | 70 | 3351 | active |
| zathura Zathura is a highly customizable, keyboard-driven document viewer built on the girara UI library and GTK4, with a plugin-based system for s… | 75 | 3317 | active |
| Pix2Text Pix2Text is an open-source Python tool that recognizes layouts, tables, math formulas (LaTeX), and text in images and converts them into Ma… | 93 | 3270 | active |
| 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 |
| LLM for Zotero A Zotero plugin that integrates large language models into the Zotero PDF reader, enabling grounded paper chat, summarization, figure extra… | 78 | 3184 | 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 |
| 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 |
| 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 |
| Dicklesworthstone/llm_aided_ocr A Python tool that converts scanned PDFs to text via Tesseract OCR, then uses LLMs (local or API-based like OpenAI/Anthropic) to correct OC… | 68 | 3001 | active |
| zcaceres/markdownify-mcp A Model Context Protocol (MCP) server that converts PDFs, images, audio, Office documents, and web content (including YouTube transcripts a… | 78 | 2998 | 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 |
| microsoft/table-transformer Table Transformer (TATR) is a deep learning object detection model from Microsoft for detecting, recognizing, and extracting tables from un… | 23 | 2948 | 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 |
| snapotter-hq/SnapOtter SnapOtter is an open-source, self-hosted file-processing suite offering 200+ tools across image, video, audio, PDF, and document modalities… | 79 | 2829 | 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 |
| 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 |
| freedmand/semantra-python Semantra is a command-line tool that semantically indexes text and PDF documents and launches a local web application for querying them by … | 31 | 2713 | active |
| naiveHobo/InvoiceNet InvoiceNet is a deep neural network application with a GUI for extracting structured information from invoice documents in PDF, JPG, and PN… | 32 | 2696 | active |
| 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 |
| lncrawl/lightnovel-crawler Lightnovel Crawler is a Python tool that downloads web novels from 300+ supported sources and converts them into e-books such as EPUB, MOBI… | 96 | 2669 | 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 |
| bookfere/Ebook-Translator-Calibre-Plugin A Calibre plugin that translates ebooks into a specified language using engines like Google Translate, ChatGPT, Gemini, and DeepL, optional… | 83 | 2646 | 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 |
| run-llama/sec-insights SEC Insights is a full-stack reference application built by LlamaIndex that uses RAG to answer questions about SEC 10-K and 10-Q financial … | 30 | 2610 | active |
| React PDF Viewer A React component library for viewing PDF documents in the browser, built with TypeScript and React hooks on top of PDF.js. It offers a plu… | 10 | 2603 | 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 |
| sismics/docs Teedy (formerly Sismics Docs) is an open-source, lightweight document management system (DMS) for individuals and businesses. It offers OCR… | 63 | 2566 | 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 |
| hydropix/TranslateBooksWithLLMs A desktop application that translates full-length books, subtitles, and documents using local or cloud LLMs (Ollama, OpenAI-compatible APIs… | 82 | 2517 | active |
| pipwerks/PDFObject PDFObject is a lightweight JavaScript utility for dynamically embedding PDF files into HTML documents using iframes. It detects browser PDF… | 27 | 2501 | stable |
| 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 |
| 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 |
| 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 |
| 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 |
| raphaelmansuy/edgequake EdgeQuake is a high-performance Graph-RAG framework written in Rust, inspired by LightRAG, that transforms documents (PDFs, markdown, text)… | 80 | 2277 | active |
| opendatalab/DocLayout-YOLO DocLayout-YOLO is a real-time YOLO-v10-based model for detecting document layout elements (text blocks, tables, figures, etc.) in diverse d… | 26 | 2277 | active |
| 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 |
| 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 |
| TimmyOVO/deepseek-ocr.rs A Rust implementation of the DeepSeek-OCR inference stack with multiple OCR/VLM backends (DeepSeek-OCR, PaddleOCR-VL, DotsOCR), DSQ quantiz… | 54 | 2189 | 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 |
| 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 |
| NanoNets/docext docext is an on-premises document intelligence toolkit powered by vision-language models, offering OCR-free structured data extraction, PDF… | 47 | 2086 | active |
| flytkgl/PDFQFZ PDFQFZ is a small desktop tool for adding cross-page (riding) seals to PDF documents. It takes a full seal image, randomly splits it across… | 84 | 2033 | active |
| Tencent-Hunyuan/HunyuanOCR HunyuanOCR-1.5 is a lightweight end-to-end OCR vision-language model from Tencent, with a unified inference environment, llama.cpp PC-side … | 60 | 2025 | active |
| WildDataX/suppr-zotero-plugin A Zotero plugin that translates academic PDF documents (and other formats via the Suppr web service) directly from the Zotero library via r… | 80 | 2015 | active |
| manisandro/gImageReader gImageReader is a graphical GTK/Qt front-end to the tesseract-ocr engine for recognizing text in images, PDFs, scans, and screenshots. It s… | 66 | 2007 | active |
| itsjunetime/tdf tdf is a terminal-based PDF viewer written in Rust using ratatui, designed for performance and responsiveness even with very large PDFs. It… | 71 | 1997 | active |
| ranuts/document A browser-based document editor that opens and edits DOCX, XLSX, PPTX, CSV, PDF and other formats entirely client-side using the OnlyOffice… | 82 | 1993 | active |
| Belval/pdf2image A Python module that wraps the pdftoppm and pdftocairo command-line utilities (from Poppler) to convert PDF pages into PIL Image objects. I… | 23 | 1983 | stable |
| run-llama/notebookllama NotebookLlaMa is an open-source, Python-based alternative to Google's NotebookLM, backed by LlamaCloud for document ingestion and retrieval… | 49 | 1976 | active |
| SaiAkhil066/CORTEX-AI-SUPER-RAG CORTEX RAG is a local-first, agentic retrieval-augmented generation application that lets users upload PDFs and ask questions with cited an… | 64 | 1973 | active |
| Tabula Tabula is a local web application for extracting data tables from text-based PDF files into CSV, Excel, or JSON. It is powered by the tabul… | 24 | 7488 | maintenance |
| simonhaenisch/md-to-pdf A hackable Node.js CLI tool that converts Markdown files to PDF using Marked for HTML conversion and Puppeteer (headless Chromium) for rend… | 48 | 1960 | active |
| clawsoftware/clawPDF clawPDF is an open-source virtual printer for Windows that converts printed output into PDF, PDF/A, OCR text, SVG, and various image format… | 23 | 1959 | active |
| yob/pdf-reader PDF::Reader is a Ruby library that parses PDF files according to the Adobe PDF specification, providing programmatic access to document met… | 72 | 1931 | active |
| Lulzx/tinypdf tinypdf is a minimal TypeScript library for creating PDF documents with under 400 lines of code and zero dependencies. It supports text, sh… | 65 | 1923 | active |
| golbin/hop HOP is an open-source desktop application for viewing and editing HWP/HWPX documents (the Korean Hangul word processor format) on macOS, Wi… | 81 | 1901 | active |
| bhaskatripathi/pdfGPT pdfGPT is an open-source Python application that lets users chat with the contents of PDF files using GPT capabilities. It implements a sim… | 59 | 7162 | maintenance |
| nazdridoy/kokoro-tts A Python CLI text-to-speech tool built on the Kokoro-82M model that converts text, EPUB, PDF, and TXT inputs into natural-sounding speech w… | 82 | 1889 | active |
| rdumasia303/deepseek_ocr_app A self-hosted OCR web application combining a React frontend with a FastAPI backend, powered by the DeepSeek-OCR model. It processes images… | 48 | 1888 | active |
| alvarcarto/url-to-pdf-api A self-hosted microservice that converts URLs or raw HTML into PDF or PNG/JPEG images using Headless Chrome via Puppeteer. It exposes a sim… | 32 | 7104 | maintenance |
| ofdrw/ofdrw OFDRW is an open-source Java library for reading, writing, and manipulating OFD (Open Fixed-layout Document) files, a Chinese national stan… | 90 | 1875 | active |
| pdfpc/pdfpc pdfpc is a GTK-based presenter console for PDF presentations with multi-monitor support. It shows the slides to the audience on one screen … | 54 | 1874 | active |
| run-llama/semtools SemTools is a Rust command-line toolkit for parsing documents (PDF, DOCX, PPTX, etc.) into markdown via LlamaParse and running fast local s… | 58 | 1870 | active |
| DeppWang/youdaonote-pull A Python script that exports and backs up all notes from Youdao Note (有道云笔记) to local storage. It converts note files to Markdown and downl… | 23 | 1866 | active |
| mrmn2/PdfDing PdfDing is a self-hosted PDF manager, viewer, and editor with a browser-based interface that syncs reading progress across devices. It supp… | 10 | 1852 | active |
| LibPDF-js/core LibPDF is a modern TypeScript PDF library for parsing, modifying, generating, and signing PDF documents. It combines lenient parsing (like … | 84 | 1842 | active |
| realdennis/md2pdf An offline web application that converts Markdown files to PDF using a split-pane editor and browser print-to-PDF. It runs entirely client-… | 57 | 1839 | stable |
| clovaai/donut Donut is an OCR-free end-to-end Transformer model for visual document understanding tasks such as document classification and information e… | 23 | 6928 | maintenance |