chunkr

App Listed

Vision infrastructure to turn complex documents into LLM-ready data

Checked Β· Sources

Downloads
0
Dependents
Not applicable
Stars
4,157
Forks
278
Contributors
17
Commits
5,334
Latest release

About

From the project README Β·

Chunkr | Open Source Document Intelligence API

Production-ready service for document layout analysis, OCR, and semantic chunking.
Convert PDFs, PPTs, Word docs & images into RAG/LLM-ready chunks.

Layout Analysis | OCR + Bounding Boxes | Structured HTML & Markdown | Vision-Language Model Processing

πŸ‘‰ Note: The open-source AGPL version is **different** from our fully managed Cloud API. The open-source release uses community/open-source models, while the Cloud API runs **proprietary in-house models** for higher accuracy, speed, and enterprise reliability.

Table of Contents

  • Table of Contents
  • (Super) Quick Start
  • Documentation
  • Open Source vs Cloud API vs Enterprise
  • Quick Start with Docker Compose
  • LLM Configuration
    • Using models.yaml (Recommended)
    • Using environment variables (Basic)
    • Common LLM API Providers
  • Licensing
  • Connect With Us
Read the full README

Open Source vs Cloud API vs Enterprise

FeatureOpen Source Repo (good)Cloud API - chunkr.ai (best)Enterprise
Perfect forDevelopment & testingProduction workloadsLarge-scale / High-security
Layout AnalysisUses open-source modelsProprietary in-house modelsIn-house + custom-tuned
OCR AccuracyCommunity OCR enginesOptimized OCR stackOptimized + domain-tuned
VLM ProcessingBasic open VLMsEnhanced proprietary VLMsCustom fine-tunes
Excel SupportβŒβœ… Native parserβœ… Native parser
Document TypesPDF, PPT, Word, ImagesPDF, PPT, Word, Images, ExcelPDF, PPT, Word, Images, Excel
InfrastructureSelf-hostedFully managed cloudManaged / On-prem
SupportDiscord communityDedicated supportDedicated founding team
Migration SupportCommunity-drivenDocs + emailDedicated migration team

The open-source release is ideal if you want transparency, local hosting, or to experiment with Chunkr’s pipeline.
For best performance, production reliability, and access to in-house models, we recommend the Chunkr Cloud API.
For high-security or regulated industries, our Enterprise edition offers on-prem or VPC deployments.

Quick Start with Docker Compose

  1. Prerequisites:

  2. Clone the repo:

git clone https://github.com/lumina-ai-inc/chunkr
cd chunkr
  1. Set up environment variables:
# Copy the example environment file
cp .env.example .env

# Configure your llm models
cp models.example.yaml models.yaml

For more information on how to set up LLMs, see here.

  1. Start the services:
# For GPU deployment:
docker compose up -d

# For CPU-only deployment:
docker compose -f compose.yaml -f compose.cpu.yaml up -d

# For Mac ARM architecture (M1, M2, M3, etc.):
docker compose -f compose.yaml -f compose.cpu.yaml -f compose.mac.yaml up -d
  1. Access the services:

    • Web UI: http://localhost:5173
    • API: http://localhost:8000
  2. Stop the services when done:

# For GPU deployment:
docker compose down

# For CPU-only deployment:
docker compose -f compose.yaml -f compose.cpu.yaml down

# For Mac ARM architecture (M1, M2, M3, etc.):
docker compose -f compose.yaml -f compose.cpu.yaml -f compose.mac.yaml down

LLM Configuration

Chunkr supports two ways to configure LLMs:

  1. models.yaml file: Advanced configuration for multiple LLMs with additional options
  2. Environment variables: Simple configuration for a single LLM
Using models.yaml (Recommended)

For more flexible configuration with multiple models, default/fallback options, and rate limits:

  1. Copy the example file to create your configuration:
cp models.example.yaml models.yaml
  1. Edit the models.yaml file with your configuration. Example:
models:
  - id: gpt-4o
    model: gpt-4o
    provider_url: https://api.openai.com/v1/chat/completions
    api_key: "your_openai_api_key_here"
    default: true
    rate-limit: 200 # requests per minute - optional

Benefits of using models.yaml:

  • Configure multiple LLM providers simultaneously
  • Set default and fallback models
  • Add distributed rate limits per model
  • Reference models by ID in API requests (see docs for more info)

Read the models.example.yaml file for more information on the available options.

Using environment variables (Basic)

You can use any OpenAI API compatible endpoint by setting the following variables in your .env file:

LLM__KEY:
LLM__MODEL:
LLM__URL:
Common LLM API Providers

Below is a table of common LLM providers and their configuration details to get you started:

ProviderAPI URLDocumentation
OpenAIhttps://api.openai.com/v1/chat/completionsOpenAI Docs
Google AI Studiohttps://generativelanguage.googleapis.com/v1beta/openai/chat/completionsGoogle AI Docs
OpenRouterhttps://openrouter.ai/api/v1/chat/completionsOpenRouter Models
Self-Hostedhttp://localhost:8000/v1VLLM or Ollama

Licensing

The core of this project is dual-licensed:

  1. GNU Affero General Public License v3.0 (AGPL-3.0)
  2. Commercial License

To use Chunkr without complying with the AGPL-3.0 license terms you can contact us or visit our website.

Connect With Us

License
AGPL-3.0
Crate facts
Not measured
  • Runs on, Native code and Python bindings read crates on crates.io. This entry lists no crate.

Compare with similar projects

Order: strongest tier first, then most downloads, then name, with unmeasured values last. A library counts downloads over 30 days. An app counts binary downloads per release. An app with none counts its crate downloads over 30 days. ML Rust runs this catalogue, so its closest project always gets a row.

chunkr beside the projects that share a topic with it
ProjectDownloadsDependentsStarsLatest releaseRuns on (GPU)Native codeLicense
chunkr This page App Listed

Vision infrastructure to turn complex documents into LLM-ready data

0 binary downloads per release Not applicable 4,157 Not measured Not measured AGPL-3.0
pdf_oxide Featured

The fastest Rust PDF library β€” 0.8ms mean, 5Γ— faster than the industry leaders, 100% pass rate on 3,830 real-world PDFs. Text extraction, Markdown/HTML conversion, PDF creation and editing.

Python bindings

316,729 downloads over 30 days 30 1,180 0.3.78 GPU support unknown Binds native code: aws-lc-rs (feature fips), lcms2-sys (feature icc-lcms2), ort-sys (feature gpu) Apache-2.0 OR MIT
toon-rust Featured

Token-Oriented Object Notation (TOON) - a token-efficient JSON alternative for LLM prompts

160,383 downloads over 30 days 67 190 0.7.0 GPU support unknown No native code found MIT
oxidizePdf App Listed

Pure Rust PDF library for AI/RAG: structure-aware chunking, no ML, no C deps.

62,285 downloads over 30 days Not applicable 194 5.5.7 GPU support unknown No native code found MIT
toon-rs Listed Dormant

Token-Oriented Object Notation – a token-efficient JSON alternative for LLM prompts

8,018 downloads over 30 days 5 22 0.1.2 GPU support unknown No native code found MIT
edgeparse Listed

EdgeParse core library β€” PDF parsing and structured data extraction

6,764 downloads over 30 days 2 155 0.3.2 GPU support unknown No native code found Apache-2.0
axp App Listed

An open protocol that gives AI agents a secure, sandboxed place to run code and use tools β€” with lean context usage. AXP works alongside MCP

Not measured Not applicable 3 Not measured Not measured Not measured Apache-2.0
Why ListedNo archive, New or Featured rule places it, so it is Listed.

What it lacks for Featured

  • The check holds no value for Homebrew installs on request over 365 days, Repology repository families, Docker pull growth over 90 days. A gate that lacks its signal does not pass.

What else the check found

  • The last activity is on 9 Sep 2026, 61 days ago. The rules expect an update within 365 days. Dormancy rule
  • The oldest outside issue waits 467 days for a reply, past the limit of 270. No maintainer replied in 365 days. Rot signals rule

Not measured: First release, Homebrew installs on request over 365 days, Repology repository families, Docker pull growth over 90 days.

Exact rules: Listed, Featured app. The check on applied thresholds version 9.

Every rule outcome, as the check records it
  • expected-interval: app: E = 365 days
  • dormancy: last activity 2026-09-09, 61 days ago, E = 365: active
  • rot: oldest unanswered issue 467 days (limit 270), no maintainer reply in 365 days
  • featured: not featured: unknown homebrew_on_request_365d, repology_families, docker_pull_growth_90d
  • listed: listed: no archive, new or featured rule applies

Measurements and sources

Each signal row shows the raw value, its source and the fetch date. The Sources list gathers every distinct source on this page. Movement needs more history.

Sources4 sources
Adoption0 binary downloads per release4 not measured
Adoption measurements
SignalValueSourceFetchedCounts
Active dependentsNot measuredYes
New dependents (365 days)Not measuredYes
Peak active dependentsNot measuredYes
Active dependents as a share of the peakNot measuredYes
Binary downloads per release0GitHub releasesYes
MaintenanceLatest human commit: 2 months ago7 not measured
Maintenance measurements
SignalValueSourceFetchedCounts
Latest human commit2026-09-09GitHub repositoryYes
Latest release2025-07-31GitHub releasesYes
First releaseNot measuredYes
Latest versionNot measuredYes
Days the oldest outside issue waits for a reply467GitHub repositoryYes
Maintainer replies over 365 days0GitHub repositoryYes
Repository archivedfalseGitHub repositoryYes
Repository gonefalseGitHub repositoryYes
Release commit or manifest in the repoNot measuredYes
Published docsNot measuredYes
Latest release fails cargo checkNot measuredYes
Build check dateNot measuredYes
Build check toolchainNot measuredYes
SecurityNot measured
Security measurements
SignalValueSourceFetchedCounts
Unpatched vulnerabilities past the grace windowNot measuredYes
RustSec unmaintained advisoryNot measuredYes
Deprecation noticeNot measuredYes
Deprecated requirementNot measuredYes
Distribution0 binary downloads over the last 3 releases10 not measured
Distribution measurements
SignalValueSourceFetchedCounts
ReleasesNot measuredYes
Downloads over 30 daysNot measuredYes
Binary downloads over the last 3 releases0GitHub releasesYes
Homebrew installs on request over 365 daysNot measuredYes
Repology repository familiesNot measuredYes
Docker pull growth over 90 daysNot measuredYes
Docker pulls at the growth baselineNot measuredYes
Every version a prereleaseNot measuredYes
Every version 0.0.xNot measuredYes
Every version yankedNot measuredYes
Crate deleted from crates.ioNot measuredYes
Repository4,157 stars, 278 forks, 17 contributors, 5,334 commits. Stars alone never qualify a project.1 not measured
Repository measurements
SignalValueSourceFetchedCounts
GitHub stars4157GitHub repositoryYes β€” one part of the repository route
GitHub forks278GitHub repositoryYes β€” one part of the repository route
Contributors with a GitHub account17GitHub contributorsYes β€” one part of the repository route
Commits on the default branch5334GitHub repositoryNo
Repository's main crate left out of the entryNot measuredYes
Facts that never count
Facts that never count measurements
SignalValueSourceFetchedCounts
LicenseAGPL-3.0GitHub repositoryNo
Runs on, from listed crates and their direct dependenciesNot measuredNo
What shows each backendNot measuredNo
Native code, from listed crates and their dependenciesNot measuredNo
Python bindings, from direct dependencies of listed cratesNot measuredNo
Crates that depend on a listed crate directlyNot measuredNo

Corrections and review history

Report a correction

No correction applies to this entry.

Judgments

A judgment enters only through an approved issue and a merged pull request.

No judgment applies to this entry.