Practical overview
When it fits
Use Docsifer when source material arrives in varied formats and a downstream workflow needs Markdown. It handles conversion and preparation; a separate system is needed for indexing, retrieval or question answering.
Who it is for
- People preparing mixed-format document collections for indexing or text analysis.
- Developers building retrieval or knowledge workflows that accept Markdown as input.
- Teams that want to run a document-conversion service locally or in a Docker container.
Documented uses
- Convert PDF, Office, HTML, image, audio and structured-data files into Markdown.
- Convert a URL into Markdown through the documented conversion API.
- Prepare normalized text for a separate indexing, retrieval or text-analysis stage.
- Use optional LLM assistance for OCR, transcription and structured layout extraction.
Requirements & limits
The project provides a documented local setup and Docker run route. The repository declares an MIT license. The README lists Python 3.10+ for the application.
- The README lists PDF, Word, PowerPoint, Excel, HTML, audio, images, CSV, JSON and ZIP as supported input categories.
- LLM enhancement is optional and requires a user-provided OpenAI-compatible key.
- LangChain and LlamaIndex are mentioned in repository topics, but tested integrations are not demonstrated; feeding Markdown into their indexing pipelines is marked Likely compatible.
- The README lists a 10 MB default upload limit, two concurrent conversions globally, one per IP, and a 55-second request timeout.
- The README says files are processed in memory and discarded immediately; this is a project statement, not an independent verification.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Convert a file with the local Docsifer API
Start Docsifer locally and submit a document to its Markdown conversion endpoint.
Before you start
- Python 3.10 or later, as specified by the README.
- The Docsifer repository and a document file.
- An environment file copied from .env.example.
Steps
Run the command below in the repository.
make installCopy
.env.exampleto.env.Start the application with the command below.
make runSubmit the file to
POST /v1/convert; the README demonstrates a PDF using the command below.curl -X POST http://localhost:7860/v1/convert -F "file=@document.pdf"
Expected outcome
The conversion endpoint returns Markdown from the submitted file.
Guide limitations
- The README lists a default upload limit of 10 MB and a 55-second request timeout.
- LLM-assisted OCR, transcription and layout extraction require an OpenAI-compatible key; the basic conversion example does not include one.
Run Docsifer in Docker
Build and start the documented containerized Docsifer application.
Before you start
- The Docsifer repository and Docker.
- An environment file copied from .env.example.
Steps
Copy
.env.exampleto.env.Build the image with the command below.
docker build -t docsifer .Start the container with the command below.
docker run --rm -p 7860:7860 --env-file .env docsiferOpen the UI at
http://localhost:7860or API documentation athttp://localhost:7860/docs.
Expected outcome
The container runs Docsifer with its UI and API documentation exposed on port 7860.
Guide limitations
- The README does not specify infrastructure sizing or production deployment requirements.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- lh0x00/docsifer · Official homepage title · retained in its source language

