Open-source Python web crawler that turns any website into clean, LLM-ready Markdown, with CSS/LLM-based structured extraction and an optional hosted API.
docling-project/docling
Open-source document parser that converts PDF, Office, HTML and other files into structured data for generative AI pipelines.
Open-source alternative to:Adobe Acrobat
- Stars
- 69,115
- Forks
- 5,107
- Open issues
- 874
- Last commit
- 3 hours ago
What is it?
Docling is a Python library and CLI for parsing documents and converting them into a unified representation called DoclingDocument. It accepts a wide range of inputs, including PDF, DOCX, PPTX, XLSX, HTML, EPUB, email files, images and audio, and exports the result as Markdown, HTML, lossless JSON or other formats.
Its PDF pipeline handles page layout, reading order, table structure, formulas, code blocks and OCR for scanned pages. Vision language models such as GraniteDocling can be used as an alternative pipeline, and speech recognition models can transcribe audio and video.
Docling can run fully locally, which suits sensitive data and air-gapped environments. It also ships with integrations for LangChain, LlamaIndex, CrewAI and Haystack, an MCP server, and a docling-serve API server.
Key features
- 01Parses PDF, Office files, HTML, EPUB, email, images and audio into one document model
- 02Advanced PDF understanding covering layout, reading order, tables and formulas
- 03OCR for scanned PDFs and images
- 04Exports to Markdown, HTML and lossless JSON
- 05Runs locally for sensitive data and air-gapped setups
- 06Integrations with LangChain, LlamaIndex, CrewAI and Haystack
Use cases
- Turning PDF reports or papers into Markdown for RAG and LLM ingestion
- Extracting tables from financial or research documents into structured data
- Building a document-processing service with the docling-serve API
- Feeding office documents into agent frameworks through LangChain or LlamaIndex
Quick start
- 1
Install the package
pip install docling - 2
Convert a document from the command line
docling https://arxiv.org/pdf/2206.01062 - 3
Convert a document in Python
Things to know
- Requires Python 3.10 or higher, as Python 3.9 support was dropped in version 2.70.0.
- Some advanced features such as VLM and ASR models rely on separate model downloads, and their own licenses apply.
Topics
FAQ
- What is docling?
- Open-source document parser that converts PDF, Office, HTML and other files into structured data for generative AI pipelines. Docling is a Python library and CLI for parsing documents and converting them into a unified representation called DoclingDocument. It accepts a wide range of inputs, including PDF, DOCX, PPTX, XLSX, HTML, EPUB, email files, images and audio, and exports the result as Markdown, HTML, lossless JSON or other formats.
- Is docling free to use? What license does it have?
- docling is open source under the MIT license. Check the license terms before using it in commercial products.
- Is docling still maintained?
- Actively maintained. The last commit to docling was on Oct 19, 2026.
- What can I use docling for?
- Turning PDF reports or papers into Markdown for RAG and LLM ingestion Extracting tables from financial or research documents into structured data Building a document-processing service with the docling-serve API Feeding office documents into agent frameworks through LangChain or LlamaIndex
- How do I install docling?
- Install the package: pip install docling Convert a document from the command line: docling https://arxiv.org/pdf/2206.01062 Convert a document in Python
- Where can I get docling?
- The source code and installation instructions are on GitHub: https://github.com/docling-project/docling
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A CLI and web workbench that compiles raw documents into an interlinked, LLM-maintained markdown wiki, using PageIndex tree retrieval for long files.
Python library and web UI that converts PDFs, DOCX, PPTX, XLSX, images and URLs into Markdown, JSON, CSV or HTML, with OCR and structured field extraction.
A Python web scraping library that uses LLMs and graph-based pipelines to extract structured data from websites and local documents based on a text prompt.
An open-source autonomous research agent that plans questions, gathers web and local sources, and writes cited reports with any LLM provider.
AutoGPT is an open-source platform for building, running, and scheduling AI agents that carry out multi-step workflows from plain-English descriptions or a visual builder.