papra
Papra is a minimalistic document management and archiving platform that lets you upload, store, and search your documents easily.
Smart Download
Visit Project Homepage
No installer available yet — head to the source repository
Minimalistic self-hosted document manager with OCR, full-text search, and email ingestion.
Core Features
- Upload and organize documents with tags
- Full-text search and advanced filters
- Automatic text extraction from images/scans (OCR)
- Email ingestion: forward emails to auto-import documents
- Folder monitoring: auto-import files from a directory
What It Can't Do
- •Project is under active development; some features like document sharing and mobile apps are not yet available.,Default database is SQLite; for production consider using Turso or another remote database.,OCR relies on Tesseract; Chinese character recognition may be less accurate than dedicated OCR services.
Use Cases
- Personal document archiving (receipts, warranties, contracts)
- Small team document sharing via organizations
- Family document management (scans, photos, letters)
- Automatic import of bills/invoices from email or folders
Detailed Introduction
Papra is a lightweight, open-source document management platform designed for long-term storage and easy retrieval. It focuses on simplicity and accessibility. Key features include document upload and organization via tags, full-text search, automatic content extraction from images/scans, email ingestion, folder monitoring, CLI and REST API. The Docker image is under 200MB and supports multiple architectures. It currently lacks advanced features like document sharing and mobile apps (planned). Compared to Paperless-ngx, Papra is simpler to set up and use, with a cleaner UI and smaller footprint, making it ideal for personal or small team use without complex configuration.
Troubleshooting & FAQ (2)
TroubleshootingWhy do I get an 'Invalid Origin' error when trying to register a user on my self-hosted Papra instance?
This happens when the frontend URL doesn't match the configured CLIENT_BASE_URL. Fix: 1) Set a proper CLIENT_BASE_URL in your environment. 2) If you use v0.2.1+, add your frontend origin to TRUSTED_ORIGINS to allow multiple URLs. For Docker deployments, ensure your .env file is loaded by adding env_file: - .env under the service in docker-compose.yml. See docs: https://docs.papra.app/self-hosting/configuration/
TroubleshootingHow to fix text extraction failure (ELIFECYCLE/ENOENT) when importing scanned PDFs into Papra?
The extraction fails when Papra tries to process an incomplete file or a file accessed via a symbolic link. To avoid this, do not upload scanned documents directly into the ingestion folder over FTP or via symlinks. Instead, upload to a temporary directory and use a watchdog script (e.g., with inotify-tools) to move the fully written file into the ingestion folder. Example: use inotifywait -m /upload_tmp -e close_write and mv the file into Papra's ingestion directory.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Double-click the downloaded installer and follow the prompts
Run with Docker: docker run -d --name papra -p 1221:1221 -e AUTH_SECRET=your-secret ghcr.io/papra-hq/papra:latest
Generate a secure secret: openssl rand -hex 48
Open http://localhost:1221 in browser, create account, and start
- Run with Docker: docker run -d --name papra -p 1221:1221 -e AUTH_SECRET=your-secret ghcr.io/papra-hq/papra:latest
- Generate a secure secret: openssl rand -hex 48
- Open http://localhost:1221 in browser, create account, and start
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 SourceUninstall Info
Stop and remove container: docker stop papra && docker rm papra. Also remove persisted data volumes if any.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
Paperless-ngx
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.
copyparty
copyparty turns any device into a file server with resumable uploads/downloads using any web browser. Supports HTTP, WebDAV, SFTP, FTP, TFTP, SMB. Only requires Python (2 or 3).
Files
A modern file manager for Windows with tabs, tags, and dual-pane support.