awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Document processing libraries

Ranking updated Jul 21, 2026

For document processing libraries, the first results are mstamy2/pypdf2 (This library provides robust tools for PDF manipulation, text extraction, and document restructuring, making it a core component for programmatic document processing tasks), pymupdf/pymupdf (PyMuPDF is a high-performance library that provides comprehensive tools for PDF manipulation, text extraction, OCR integration, and format conversion, directly addressing all the core requirements for document processing) and docling-project/docling (Docling is a comprehensive document processing library that natively handles PDF manipulation, OCR, text extraction, and format conversion into structured data, perfectly aligning with your requirements). pdfcrafttool/pdfcraft and gotenberg/gotenberg round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

Explore the best open-source document processing libraries. Compare top-rated tools by features and activity to find the best fit for your project.

Document processing libraries

Find the best repos with AI.We'll search the best matching repositories with AI.
  • mstamy2/pypdf2mstamy2 avatar

    mstamy2/PyPDF2

    10,064View on GitHub↗

    PyPDF2 is a pure Python library for reading, writing, and manipulating PDF files. It functions as a document manipulator, text extractor, and encryption tool, allowing users to process PDF files without relying on external C libraries or native binaries. The library provides specialized tools for modifying document structures, such as merging multiple files into one, splitting documents into separate files, and transforming page layouts through cropping. It also includes capabilities for securing documents via passwords and encryption. Additional capabilities include the extraction of writte

    This library provides robust tools for PDF manipulation, text extraction, and document restructuring, making it a core component for programmatic document processing tasks.

    PythonPDF LibrariesText ExtractionContent Extraction
    View on GitHub↗10,064
  • pymupdf/pymupdfpymupdf avatar

    pymupdf/PyMuPDF

    9,086View on GitHub↗

    PyMuPDF is a comprehensive PDF manipulation library and document analysis tool. It serves as a text extraction tool, OCR engine, and image converter, providing a programmatic interface to edit, merge, split, and optimize PDF and Office documents. The project distinguishes itself through high-performance capabilities, including the use of C-bindings for low-level manipulation and parallelized page processing to accelerate workloads. It provides specialized conversion paths, such as transforming PDF content into Markdown for retrieval-augmented generation and large language model pipelines. It

    PyMuPDF is a high-performance library that provides comprehensive tools for PDF manipulation, text extraction, OCR integration, and format conversion, directly addressing all the core requirements for document processing.

    PythonDocument ConversionOCR EnginesOptical Character Recognition
    View on GitHub↗9,086
  • docling-project/doclingdocling-project avatar

    docling-project/docling

    61,674View on GitHub↗

    Docling is a modular framework designed for document parsing, layout analysis, and structured data extraction. It transforms unstructured files and web content into a unified, hierarchical data model that preserves the spatial and semantic relationships between text, tables, images, and layout elements. By normalizing diverse input formats into a consistent internal representation, the library enables uniform processing across various document types. The project distinguishes itself through a schema-driven approach that maps document regions to strongly-typed objects, ensuring data accuracy t

    Docling is a comprehensive document processing library that natively handles PDF manipulation, OCR, text extraction, and format conversion into structured data, perfectly aligning with your requirements.

    PythonStructuredSchema-Driven Extractors
    View on GitHub↗61,674
  • pdfcrafttool/pdfcraftPDFCraftTool avatar

    PDFCraftTool/pdfcraft

    3,113View on GitHub↗

    Pdfcraft is a containerized service for self-managed PDF processing, editing, and conversion. It provides a toolkit for document manipulation, a multi-format converter, and OCR software to transform scanned documents into searchable and editable text. The project features a visual, node-based workflow editor that allows users to build automated pipelines by chaining together various PDF conversion and optimization operations. The service covers a broad range of capabilities, including document management for merging and splitting files, format conversion between PDFs and office documents or

    Pdfcraft is a comprehensive, containerized document processing service that provides the requested PDF manipulation, OCR, and format conversion capabilities within an automated, node-based workflow environment.

    JavaScriptPDF Format ConvertersPDF Manipulation UtilitiesOptical Character Recognition
    View on GitHub↗3,113
  • gotenberg/gotenberggotenberg avatar

    gotenberg/gotenberg

    12,452View on GitHub↗

    Gotenberg is a stateless, containerized service that provides a unified API for document conversion, manipulation, and web-to-PDF rendering. It functions as a centralized engine that abstracts complex document processing tasks, allowing users to interact with various rendering tools and libraries through standard HTTP requests. The service distinguishes itself by utilizing headless browser automation to capture web content and by wrapping multiple specialized PDF engines into a single interface. It supports asynchronous task execution, offloading resource-intensive operations to background wo

    Gotenberg is a containerized service that provides a unified API for document conversion and PDF manipulation, making it a robust tool for programmatically handling various document formats.

    GoDocument ConversionPDF Format ConvertersPDF Manipulation Utilities
    View on GitHub↗12,452
  • frooodle/stirling-pdfFrooodle avatar

    Frooodle/Stirling-PDF

    81,168View on GitHub↗

    Stirling-PDF is a web-based PDF management suite used for editing, merging, splitting, and converting PDF documents. It functions as a self-hosted document manager, providing a centralized interface for users to manipulate files on a private server. The system features a workflow automation engine that allows for the creation of processing pipelines to handle large volumes of documents without writing custom code. It also includes an optical character recognition tool to convert scanned PDFs into searchable and editable text. Access is managed through single sign-on integration and OIDC comp

    Stirling-PDF is a self-hosted document management application that provides robust PDF manipulation, OCR, and conversion capabilities through a web interface and API, making it a comprehensive tool for document processing tasks.

    JavaOCR EnginesOptical Character RecognitionPDF Manipulation Utilities
    View on GitHub↗81,168
  • opendatalab/pdf-extract-kitopendatalab avatar

    opendatalab/PDF-Extract-Kit

    9,724View on GitHub↗

    PDF-Extract-Kit is a document extraction toolkit designed to convert PDF documents into structured formats such as Markdown, HTML, and LaTeX. It functions as a multi-stage parsing framework that combines a document layout analyzer, a formula recognition engine, an OCR text extractor, and a table extraction system. The project focuses on recovering complex document elements by translating images of mathematical formulas and tabular structures into editable source code. It utilizes model-driven layout analysis to identify structural elements in reports and textbooks while ignoring noise like wa

    This toolkit provides a comprehensive pipeline for PDF parsing, including OCR, layout analysis, and conversion to structured formats like Markdown and HTML, fitting the requirements for document processing.

    PythonOptical Character RecognitionText ExtractionContent Extraction
    View on GitHub↗9,724
  • py-pdf/pypdf2py-pdf avatar

    py-pdf/PyPDF2

    10,094View on GitHub↗

    PyPDF2 is a pure Python library for transforming, securing, and extracting data from PDF documents. It provides a comprehensive suite of tools to modify page layouts, manage document security, and retrieve embedded metadata without relying on external C libraries. The toolkit enables document assembly through the merging of multiple files and the splitting of documents into smaller parts. It also supports page-level transformations, including the ability to rotate pages and adjust visible crop areas. The library includes capabilities for security management via password-based encryption and

    This library provides robust tools for PDF manipulation, text extraction, and document assembly, making it a specialized component for handling PDF-based document processing tasks.

    PythonPDF LibrariesPDF Manipulation LibrariesPDF Text Extraction
    View on GitHub↗10,094
  • vikparuchuri/markerVikParuchuri avatar

    VikParuchuri/marker

    36,164View on GitHub↗

    Marker is an LLM-powered document parser and OCR pipeline designed to convert PDFs and unstructured files into structured markdown, JSON, and HTML. It functions as a data preprocessor that transforms complex documents into machine-readable formats while preserving tables, equations, and layout structures. The system utilizes large language models to refine OCR accuracy, clean mathematical notation, and merge fragmented tables across multiple pages. It employs model-based layout analysis to predict block types and bounding boxes, ensuring a more precise conversion of document elements. Capabi

    Marker is a document processing tool that extracts text, tables, and layout structures from PDFs and images, converting them into structured formats like Markdown and JSON.

    PythonDocument ConversionOptical Character RecognitionStructured Data Extraction
    View on GitHub↗36,164
  • kreuzberg-dev/kreuzbergkreuzberg-dev avatar

    kreuzberg-dev/kreuzberg

    8,527View on GitHub↗

    Kreuzberg is a document extraction engine that converts PDFs, Office files, images, and over 90 other formats into clean, structured text and metadata. It is built around a compiled Rust core that can be used as a native library, a command-line tool, a REST API server, or a WebAssembly module for browser-based processing. The system is designed to run entirely on self-hosted infrastructure, with no data leaving the user's environment. What distinguishes Kreuzberg is its breadth of integration surfaces and its pipeline architecture. It exposes extraction capabilities through native bindings fo

    Kreuzberg is a comprehensive document extraction engine that provides PDF manipulation, OCR, and format conversion capabilities, making it a direct match for your requirements.

    RustOptical Character RecognitionPDF Text ExtractionStructured Data Extraction
    View on GitHub↗8,527
  • jaidedai/easyocrJaidedAI avatar

    JaidedAI/EasyOCR

    29,615View on GitHub↗

    EasyOCR is a deep learning-based computer vision library designed to perform optical character recognition on images and video frames. It functions as a comprehensive pipeline that automates the transformation of visual text into machine-readable strings, enabling the digitization of physical documents, forms, and receipts into searchable data. The engine distinguishes itself through a multi-stage processing workflow that combines convolutional neural networks for spatial feature extraction with sequence-based decoding mechanisms. This architecture allows the system to identify and interpret

    This library provides the core OCR and text extraction capabilities required for document processing, though it focuses specifically on image-based text recognition rather than native PDF manipulation or format conversion.

    PythonOCR EnginesOptical Character Recognition
    View on GitHub↗29,615
  • jsvine/pdfplumberjsvine avatar

    jsvine/pdfplumber

    9,732View on GitHub↗

    pdfplumber is a PDF data extraction library and layout analysis tool used to retrieve text, tables, and geometric objects from PDF files using precise coordinate-based analysis. It functions as a layout analyzer and table parser that identifies the bounding boxes and visual coordinates for every character and image on a page. The library distinguishes itself through visual debugging capabilities, allowing users to render PDF pages as images and draw annotations to verify the position of extracted data. It employs line and intersection analysis to identify cell structures and convert unstructu

    This is a specialized library for extracting text, tables, and geometric data from PDFs, making it a strong tool for document processing despite lacking built-in OCR or support for non-PDF formats.

    PythonPDF LibrariesText Extraction
    View on GitHub↗9,732
  • pdfcpu/pdfcpupdfcpu avatar

    pdfcpu/pdfcpu

    8,675View on GitHub↗

    pdfcpu is a Go PDF processing library and command-line interface designed for programmatically manipulating, optimizing, and validating PDF files. It provides a toolkit for document content modification and structural management. The project distinguishes itself as an optimization tool and layout engine, capable of reducing file sizes and improving loading speeds by streamlining internal structures. It also functions as a security manager, providing password-based encryption, decryption, and digital signature verification. Its capability surface includes page management for merging, splittin

    This is a comprehensive Go library and CLI tool for PDF manipulation, including page management, security, and structural optimization, which directly addresses the core document processing requirements.

    GoPDF Processing LibrariesPDF Manipulation UtilitiesPDF Layout Operations
    View on GitHub↗8,675
  • ub-mannheim/tesseractUB-Mannheim avatar

    UB-Mannheim/tesseract

    4,111View on GitHub↗

    Tesseract is an optical character recognition engine and tool designed to convert printed or handwritten text from images into machine-readable digital text. It functions as a multilingual text extractor and a document digitization pipeline that transforms scanned images into structured digital formats. The project includes a framework for training custom scripts and language-specific models, allowing the engine to recognize new languages or unique fonts through custom training data. Its capabilities cover automated text extraction, digital archive digitization, and the export of recognized

    Tesseract is a specialized OCR engine that provides the core text extraction and digitization capabilities required for document processing, though it focuses on image-to-text conversion rather than general-purpose PDF manipulation or format conversion.

    C++OCR EnginesOptical Character Recognition
    View on GitHub↗4,111
  • stirling-tools/stirling-pdfStirling-Tools avatar

    Stirling-Tools/Stirling-PDF

    81,109View on GitHub↗

    Stirling-PDF is a self-hosted document processing suite designed for secure, private file management. It functions as a comprehensive transformation engine that executes complex operations—such as merging, splitting, converting, and redacting documents—directly on the host machine. The platform provides both a browser-based interface for interactive editing and a programmatic, API-first architecture that allows for the automation of document workflows through standard HTTP requests. The project distinguishes itself through its focus on private, infrastructure-agnostic deployment and granular

    Stirling-PDF is a self-hosted document processing suite that provides a robust API for programmatic PDF manipulation, conversion, and OCR tasks, making it a highly capable tool for automating document workflows.

    TypeScriptOptical Character Recognition EnginesPDF Format ConvertersPDF Manipulation Utilities
    View on GitHub↗81,109
  • rmtheis/tess-twormtheis avatar

    rmtheis/tess-two

    3,765View on GitHub↗

    Tess-two is an optical character recognition tool and Android application designed to extract written text from images using the Tesseract engine. It functions as an image analysis utility for detecting visual artifacts, blur, and optical flow within local image files on Android devices. The project includes an image pre-processing suite used to clean and manipulate images to increase the accuracy of text recognition. This involves a pipeline that applies grayscale conversion and binarization before the recognition process. The software integrates native image processing and character analys

    This library provides the Tesseract OCR engine for Android, enabling text extraction from images and including pre-processing tools to improve recognition accuracy.

    COCR EnginesOptical Character Recognition
    View on GitHub↗3,765
  • pdfminer/pdfminer.sixpdfminer avatar

    pdfminer/pdfminer.six

    6,906View on GitHub↗

    pdfminer.six is a programmatic tool for extracting text, layout information, and metadata from PDF documents into machine-readable formats. It functions as a document parser that converts internal PDF objects and structures into accessible data objects for analysis. The project includes utilities for decrypting RC4 and AES encrypted files to enable content extraction. It also provides a layout analyzer to identify fonts, colors, and text locations to determine the organizational structure of pages. The system covers a broad range of extraction capabilities, including the retrieval of embedde

    This library is a specialized tool for parsing and extracting text, layout, and metadata from PDF files, making it a direct fit for programmatic document processing despite lacking built-in OCR capabilities.

    PythonPDF Text ExtractionText ExtractionPDF Format Converters
    View on GitHub↗6,906
  • torakiki/pdfsamtorakiki avatar

    torakiki/pdfsam

    4,457View on GitHub↗

    pdfsam is a PDF manipulation software and desktop application designed for splitting, merging, rotating, and extracting pages from PDF documents. It functions as a PDF editor, converter, and security tool, providing capabilities to modify document structures and manage file formats. The project distinguishes itself through specialized processing capabilities, including an OCR document processor for extracting editable text from scanned images and PDF interleaving to alternate pages from multiple files. It also provides a security suite for encrypting documents, managing access permissions, an

    This is a desktop application for PDF manipulation that includes OCR and format conversion capabilities, fitting the category of a document processing tool even though it is primarily a standalone application rather than a developer-focused library.

    JavaPDF Format ConvertersPDF Manipulation UtilitiesOptical Character Recognition
    View on GitHub↗4,457
  • librepdf/openpdfLibrePDF avatar

    LibrePDF/OpenPDF

    4,293View on GitHub↗

    OpenPDF is a Java library and document processor used for creating, editing, rendering, and encrypting PDF documents. It functions as a toolkit for generating new files from scratch, modifying existing document structures, and extracting text content. The project includes a dedicated engine for transforming HTML and CSS content into PDF documents by parsing markup and applying styles. It also provides a rendering engine to convert PDF pages into image formats for thumbnails and previews, alongside a security utility for protecting content via document encryption. The library supports the add

    This Java library provides robust tools for PDF creation, editing, and text extraction, serving as a core component for document processing workflows despite lacking native OCR capabilities.

    JavaPDF LibrariesPDF Text Extraction
    View on GitHub↗4,293
  • tesseract-ocr/tesseracttesseract-ocr avatar

    tesseract-ocr/tesseract

    74,751View on GitHub↗

    Tesseract is a neural network-based optical character recognition engine designed to convert scanned images and digital documents into machine-readable, searchable text. It functions as both a command-line utility for automating large-scale digitization workflows and a cross-platform library that can be embedded into desktop, mobile, or server-side applications. By utilizing long short-term memory networks, the engine provides robust text extraction across more than one hundred languages and dozens of scripts. The project distinguishes itself through a sophisticated document layout analysis f

    Tesseract is a specialized OCR engine that provides the core text extraction and layout analysis capabilities required for document processing, though it focuses on image-to-text conversion rather than general-purpose PDF manipulation or format conversion.

    C++OCR EnginesOptical Character Recognition Engines
    View on GitHub↗74,751
  • pdf-rs/pdfpdf-rs avatar

    pdf-rs/pdf

    1,672View on GitHub↗

    This library is a toolkit for processing, manipulating, and inspecting PDF documents within the Rust programming language. It provides programmatic access to the internal structure of files, enabling the extraction of data and the modification of document content. The project utilizes a strongly-typed system to map complex document objects into structured data models. It supports the parsing of existing files through lazy-loading and stream-based decoding, which allows for the retrieval of text, metadata, and images. The library also facilitates the creation of updated document versions by re

    This library provides the core functionality for parsing, inspecting, and extracting text from PDF documents, making it a suitable tool for programmatic document processing despite lacking built-in OCR capabilities.

    RustPDF Libraries
    View on GitHub↗1,672
  • datalab-to/suryadatalab-to avatar

    datalab-to/surya

    20,889View on GitHub↗

    Surya is a document processing platform designed to transform unstructured files into structured, machine-readable data. It provides a comprehensive suite of tools for text recognition, layout analysis, and reading order detection, enabling the conversion of PDFs and images into formats such as JSON, HTML, or markdown. The platform is built to handle complex document workflows, offering capabilities for data extraction, document segmentation, and automated form completion. The platform distinguishes itself through a robust pipeline-based architecture that allows users to chain analysis tasks

    Surya is a document processing toolkit that provides the core capabilities of text extraction, layout analysis, and format conversion required to transform unstructured documents into structured data.

    PythonDocument ConversionStructured Data Extraction
    View on GitHub↗20,889
  • apache/tikaapache avatar

    apache/tika

    3,572View on GitHub↗

    Tika is a content analysis toolkit and Java library designed for detecting and extracting metadata and text from thousands of different file types. It functions as a universal document text extractor and metadata extraction engine, converting complex files into plain text or XHTML. The system employs a specialized MIME type detector that identifies document formats using magic bytes and metadata to determine the correct parser. It serves as an OCR integration gateway, connecting to external text recognition tools to extract content from image files. The project covers a broad range of extrac

    Apache Tika is a comprehensive toolkit for detecting and extracting text and metadata from a vast array of file formats, serving as a robust engine for document processing and OCR integration.

    JavaContent ExtractionDocument Parsing EnginesOptical Character Recognition
    View on GitHub↗3,572
  • py-pdf/pypdfpy-pdf avatar

    py-pdf/pypdf

    9,818View on GitHub↗

    pypdf is a Python library for parsing, manipulating, and generating PDF documents. It provides high-level operations for document processing, such as merging multiple files into one or splitting a single document into smaller files. The project includes specialized tools for managing interactive elements, including the creation and modification of annotations, hyperlinks, and form fields. It also supports advanced metadata management, allowing for the extraction and modification of standard document properties and XML-based XMP metadata. Beyond basic structural changes, the library covers pa

    This library provides robust tools for parsing, splitting, merging, and extracting data from PDF documents, making it a core component for document processing workflows despite lacking built-in OCR capabilities.

    PythonPDF LibrariesText ExtractionContent Extraction
    View on GitHub↗9,818
  • unidoc/uniofficeunidoc avatar

    unidoc/unioffice

    4,809View on GitHub↗

    unioffice is a comprehensive document processing suite that provides a PDF document processor, an Open XML document library, a document security toolkit, and a document content extractor. It is designed to programmatically create, read, and modify Word, Excel, and PowerPoint files, as well as generate and edit PDF documents. The project is distinguished by its native language implementation of the Open XML standard, which removes native binary dependencies to simplify container deployments. It features advanced capabilities for digital document security, including hardware-based PDF signing,

    This library provides a robust suite for programmatically creating, modifying, and converting Office and PDF documents, fitting the category well despite lacking explicit OCR capabilities.

    GoPDF Text ExtractionStructured Data ExtractionPDF Manipulation Utilities
    View on GitHub↗4,809
  • microsoft/markitdownmicrosoft avatar

    microsoft/markitdown

    154,485View on GitHub↗

    This project is an AI-powered document processing engine designed to transform diverse file formats into structured Markdown. By leveraging multimodal language models, it performs complex layout analysis and semantic text extraction, allowing for the conversion of both unstructured files and scanned images into machine-readable content. The toolkit distinguishes itself through a modular, plugin-based architecture that orchestrates multi-stage extraction pipelines. Users can steer the parsing behavior by injecting custom instructions, enabling the system to adapt to domain-specific document st

    This tool provides a programmatic pipeline for extracting and converting diverse document formats into structured Markdown, effectively serving as a modern document processing library that handles both text extraction and OCR-based analysis.

    PythonOptical Character Recognition EnginesDocument Conversion Utilities
    View on GitHub↗154,485
  • mwilliamson/mammoth.jsmwilliamson avatar

    mwilliamson/mammoth.js

    6,101View on GitHub↗

    This library focuses on converting Word documents to HTML, providing essential text extraction and format conversion capabilities within the document processing domain.

    JavaScriptDocument Conversion
    View on GitHub↗6,101
  • llmware-ai/llmwarellmware-ai avatar

    llmware-ai/llmware

    14,838View on GitHub↗

    llmware is a Python framework for AI agent orchestration and model management, designed to coordinate multi-model workflows and autonomous agents. It provides a unified model catalog and standardized interface to execute specialized language models for complex research, analysis, and structured data generation. The project distinguishes itself through its heavy emphasis on local execution and quantized inference, allowing models to run on private infrastructure using CPU, GPU, and NPU acceleration via runtimes like ONNX and OpenVino. It features a specialized ability to translate natural lang

    This framework provides a comprehensive suite of document extraction and parsing utilities specifically designed to convert unstructured files into structured data for RAG and AI workflows, fitting the requirements for document processing.

    PythonDocument Parsing Engines
    View on GitHub↗14,838
  • jgm/pandocjgm avatar

    jgm/pandoc

    44,822View on GitHub↗

    Pandoc is a universal document converter that translates content between a wide range of markup and binary formats. It functions by parsing input documents into a unified intermediate abstract syntax tree, which serves as the foundation for consistent manipulation and transformation across diverse output types. The system is distinguished by its modular reader-writer pipeline, which decouples input parsing from output generation to allow for granular control over document structure. Users can programmatically manipulate this intermediate tree through a robust filter system, supporting both ex

    Pandoc is a powerful document conversion engine that excels at parsing and transforming content between a vast array of formats, making it a highly effective tool for programmatic document manipulation and extraction.

    HaskellDocument Processing and ConversionAcademic AuthoringContent Parsers
    View on GitHub↗44,822
  • run-llama/liteparserun-llama avatar

    run-llama/liteparse

    10,782View on GitHub↗

    A fast, helpful, and open-source document parser

    This library provides a comprehensive suite of tools for document parsing, including OCR, PDF manipulation, and text extraction, making it a direct fit for programmatic document processing tasks.

    RustCost-Optimized ParsersDocument Parsing and ExtractionOpen-Source Document Parsers
    View on GitHub↗10,782
  • dotnet/open-xml-sdkdotnet avatar

    dotnet/Open-XML-SDK

    4,537View on GitHub↗

    Open-XML-SDK is a library for programmatically creating, modifying, and validating Office documents based on the Open XML standard. It functions as an office file generator and XML document parser, enabling the manipulation of word processing, spreadsheet, and presentation files. The library allows for the generation and updating of document content and structure without requiring the native office applications to be installed. It utilizes strongly typed classes and a schema-validated approach to ensure that created files remain compatible and correctly structured. The project provides capab

    This library provides robust programmatic manipulation and generation of Office documents, though it is specialized for the Open XML format rather than general-purpose PDF processing or OCR tasks.

    C#Office Document GenerationOffice Document LibrariesOffice Document Manipulation
    View on GitHub↗4,537
  • nissl-lab/npoinissl-lab avatar

    nissl-lab/npoi

    6,186View on GitHub↗

    NPOI is a pure .NET library for reading and writing Microsoft Office files in both legacy binary (.xls) and modern OpenXML (.xlsx, .docx) formats, operating entirely without requiring Microsoft Office or COM interop. It runs on Windows and Linux under .NET Standard and .NET Framework runtimes, using only managed code to parse and generate Office documents. The library provides comprehensive spreadsheet capabilities, including creating, editing, and reading Excel workbooks in both .xls and .xlsx formats, with support for cell formatting, styles, and formulas. It includes a streaming row-by-row

    NPOI is a robust .NET library for programmatically reading, writing, and manipulating Microsoft Office document formats, fitting the category by providing deep access to structured document data even without native PDF or OCR capabilities.

    C#Excel Spreadsheet ManagementOffice Document Libraries.NET Frameworks
    View on GitHub↗6,186
  • dolanmiu/docxdolanmiu avatar

    dolanmiu/docx

    5,814View on GitHub↗

    docx is a JavaScript and TypeScript library for the programmatic generation and manipulation of Word documents. It serves as an OOXML document generator, allowing developers to create formatted office files through code instead of manual editing. The library enables document automation across both Node.js and web browser environments. It supports client-side document export, allowing users to generate and download files directly in the browser without a backend server. Capabilities include the ability to define page layouts, margins, and orientation. Users can programmatically insert documen

    This library provides programmatic generation and manipulation of Word documents, fitting the category as a tool for document processing even though its primary focus is on creation rather than extraction or OCR.

    TypeScriptWord Processing Document GenerationClient-Side Document GeneratorsDocument Element Insertion
    View on GitHub↗5,814
  • opendatalab/mineruopendatalab avatar

    opendatalab/MinerU

    67,734View on GitHub↗

    MinerU is a document parsing pipeline designed to transform unstructured files into machine-readable, structured data. It utilizes deep learning models to perform layout analysis, identifying document regions and extracting complex content such as mathematical expressions. By combining these neural network inferences with geometric heuristics, the system reconstructs the reading order and structural hierarchy of documents to ensure accurate data representation. The project distinguishes itself through a multi-stage processing workflow that integrates layout detection, optical character recogn

    MinerU is a comprehensive document parsing pipeline that performs layout analysis, OCR, and structured data extraction from PDFs, making it a highly capable tool for your document processing needs.

    PythonDeployment & ServingDocument Layout AnalysisAutomated Data Extraction
    View on GitHub↗67,734
  • pdf2htmlex/pdf2htmlexpdf2htmlEX avatar

    pdf2htmlEX/pdf2htmlEX

    5,412View on GitHub↗

    pdf2htmlEX is a PDF to HTML converter that transforms documents into web pages while preserving the original layout, fonts, and formatting. It functions as a layout engine and text extractor, mapping PDF coordinate data to HTML and CSS to maintain visual fidelity. The tool converts PDF content into searchable and selectable native HTML text by embedding original document fonts. It maintains document interactivity by preserving internal links, bookmarks, and outlines, converting them into functional web navigation. The conversion process supports flexible output structures, allowing documents

    This tool is a specialized document processor that extracts text and layout information from PDFs to convert them into structured HTML, fitting the category of a document processing library despite its specific focus on format conversion.

    HTMLPDF to HTML ConvertersAccessible Text LayersConverted Document Interactivity
    View on GitHub↗5,412
  • camelot-dev/camelotcamelot-dev avatar

    camelot-dev/camelot

    3,764View on GitHub↗

    Camelot is a Python library and processing engine designed to extract tabular data from PDF documents. It converts unstructured tables into machine-readable formats such as CSV, JSON, and Excel. The project provides specialized toolsets for different document types, using line detection for ruled tables and whitespace analysis for borderless tables. It includes an optical character recognition system to recover structured data from image-based scanned PDFs that lack a digital text layer. The library handles complex document layouts, including encrypted files, rotated pages, and tables that s

    Camelot is a specialized Python library that focuses on extracting tabular data from PDFs, including support for OCR and various structured output formats, making it a highly effective tool for document processing tasks.

    PythonPDF Table ParsingTable ExtractionHeuristic Table Identification
    View on GitHub↗3,764
  • apache/pdfboxapache avatar

    apache/pdfbox

    3,079View on GitHub↗

    Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you…

    This Java library provides robust capabilities for PDF manipulation and text extraction, serving as a core tool for document processing workflows.

    JavaPDF Processing Tools
    View on GitHub↗3,079
  • nutlope/llama-ocrNutlope avatar

    Nutlope/llama-ocr

    2,426View on GitHub↗

    Llama-ocr is a library designed to convert images and documents into structured markdown by leveraging multimodal vision models. It functions as a vision-based text extractor and document parser, identifying and transcribing both textual content and spatial layout from image-based files. The tool utilizes large vision models to perform zero-shot layout parsing, allowing it to interpret document structures without the need for task-specific training data. It employs prompt-driven extraction to guide the model in formatting raw visual data into consistent markdown syntax, while operating throug

    This library provides programmatic OCR and text extraction by converting documents into structured Markdown using vision models, fitting the category of a document processing tool.

    TypeScriptDocument to Markdown ConvertersOCR LibrariesStructured Data Extraction
    View on GitHub↗2,426
  • grobidorg/grobidgrobidOrg avatar

    grobidOrg/grobid

    4,954View on GitHub↗

    Grobid is a machine learning system designed to transform academic and scientific PDF publications into structured XML. It functions as a PDF to XML parser and scholarly metadata extractor, identifying and normalizing titles, authors, affiliations, and bibliographic references from research papers. The system utilizes a deep learning document segmenter to divide raw PDFs into functional regions and employs a bibliographic reference resolver to match citations against external registries for metadata enrichment and DOI resolution. It supports a full machine learning model training pipeline, al

    Grobid is a specialized machine learning tool for extracting structured metadata and full-text content from scientific PDFs, making it a highly effective library for complex document parsing and data conversion tasks.

    JavaBibliographic Metadata ExtractionPDF Semantic ParsersPDF to XML Converters
    View on GitHub↗4,954
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
mstamy2/pypdf210.1KPythonNOASSERTIONJun 16, 2026
pymupdf/pymupdf9.1KPythonagpl-3.0Feb 18, 2026
docling-project/docling
61.7K
Python
MIT
Jun 16, 2026
pdfcrafttool/pdfcraft3.1KJavaScriptagpl-3.0Feb 14, 2026
gotenberg/gotenberg12.5KGoMITJun 19, 2026
frooodle/stirling-pdf81.2KJavaNOASSERTIONJun 17, 2026
opendatalab/pdf-extract-kit9.7KPythonAGPL-3.0Jan 3, 2025
py-pdf/pypdf210.1KPythonNOASSERTIONJun 25, 2026
vikparuchuri/marker36.2KPythonGPL-3.0Jun 6, 2026
kreuzberg-dev/kreuzberg8.5KRustNOASSERTIONJun 23, 2026

Related searches

  • Document processing AI
  • a library for processing digital documents
  • a library for converting office document formats
  • a python library for manipulating pdf files
  • a python library for manipulating pdf files
  • a javascript library for generating pdf files
  • an open source alternative to Microsoft Word
  • an open source pdf viewer for desktop