OpenSource-Hub
P

Paperless-ngx

40.3k stars·File Management·SHA-256 checksum verified

An open-source document management system that turns physical papers into a searchable, organized digital archive. Self-hosted, OCR-powered, and built to eliminate paper clutter forever.

Smart Download

Visit Project Homepage

No installer available yet — head to the source repository

Self-hosted document management with OCR, search, and AI classification — your personal digital filing cabinet.

Core Features

  • Automatic OCR in 100+ languages
  • Machine learning classification and tagging
  • Full-text search with filters (date, type, tags)
  • Email, camera, and scanner integration
  • Responsive web UI for desktop and mobile

What It Can't Do

  • Do not expose directly on public internet; documents are stored unencrypted in plain text. Use LAN or VPN only.,OCR accuracy for handwriting is limited; ensure scanned documents are clear for best results.

Use Cases

  • Home: digitize receipts, contracts, medical records, warranties
  • Freelancers / small teams: manage invoices, contracts, client files
  • Digital hoarders: turn physical books, notes, clippings into searchable knowledge base

Detailed Introduction

Paperless-ngx is a community-driven document management system (DMS) that scans, indexes, and archives your physical documents into a fully searchable online library. It automatically extracts text via OCR, classifies documents with machine learning, and provides a clean web interface to tag, search, and retrieve any document instantly. Unlike cloud solutions, you host it yourself — keeping your sensitive data private. The project is the official successor to Paperless and Paperless-ng, with an active team and regular updates. It supports multi-user, multi-language, email ingestion, and integrates with tools like Nextcloud, Home Assistant, and more. A live demo is available for testing.

Troubleshooting & FAQ (2)

Troubleshooting
Why does Paperless-ngx fail with 'input (681 tokens) is too large to process. increase the physical batch size' when using llama.cpp for embeddings?

The error occurs because the embedding backend (llama.cpp) receives an input larger than its configured physical batch size (-b 512). To fix, increase the batch size in the llama.cpp command to at least 1024 (e.g., -b 1024). Alternatively, use an embedding model that supports larger input sizes. Paperless-ngx currently hardcodes RAG_CHUNK_SIZE to 1024, which can cause this issue for models with smaller context windows; a future update may allow adjusting this value.

GitHub Issue #12859
Troubleshooting
Why are tags not saving when using bulk edit in Paperless-ngx?

Known issue when running Paperless-ngx under ASGI (e.g., Granian) with PostgreSQL and psycopg3. The bulk modify_tags operation silently fails because the M2M write occurs in a different database transaction that never commits. Workaround: Edit tags from the document detail view (PATCH /api/documents/{id}/) where the operation succeeds. Alternatively, if possible, switch to a WSGI server (e.g., Gunicorn) to avoid the async/sync boundary problem. Track the GitHub issue #12699 for a permanent fix.

GitHub Issue #12699

Tags

document-managementself-hostedOCRDMSpaperlessarchiveprivacy

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Step 1: Ensure Docker and Docker Compose are installed

4

Step 2: Run one-liner: bash -c "$(curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh)"

5

Step 3: Follow prompts to configure ports and storage, then access http://localhost:8000 to create admin account

Install Guide
  1. Step 1: Ensure Docker and Docker Compose are installed
  2. Step 2: Run one-liner: bash -c "$(curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh)"
  3. Step 3: Follow prompts to configure ports and storage, then access http://localhost:8000 to create admin account
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

Stop containers and remove volumes: docker compose down -v. To fully purge, delete the persistent data directory (e.g., /mnt/paperless). Always back up important documents first.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseGPL-3.0
Last Updated2026-06-27 11:10:11
GitHub RepositoryOfficial Website

Having issues? Check the FAQ below

2 FAQs

Similar Projects