Quick, painless, intuitive OCR platform written in Rust and TypeScript. Modern UI with modern API, with an emphasis on intuitive user experience.
Go to file
Jon Fuller 9eaf43c211
Merge branch 'main' into feat/improve-jwt-gen-and-cpu-cores-used
2025-08-18 09:51:32 -07:00
.cargo feat(tests): work on resolving tests that don't pass given the large rewrite 2025-07-28 04:13:14 +00:00
.claude/agents feat(webdav): support capturing individual directory errors in webdav 2025-08-14 16:24:05 +00:00
.github/workflows chore(deps): update alpine/helm docker tag to v3.18.5 2025-08-17 10:22:17 +00:00
.woodpecker fix(ci): just building one container 2025-06-13 23:10:34 +00:00
charts/readur feat(jwt): don't manage jwt like this 2025-08-17 03:12:49 +00:00
docs feat(docs): update language to be more conversational 2025-08-16 19:55:45 +00:00
frontend fix(tests): resolve issues with webdav scan failure testing 2025-08-18 15:47:58 +00:00
migrations fix(migrations): also resolve issue in the new generic source scan failure migration 2025-08-18 15:59:22 +00:00
scripts fix(build): update `npm ci` to `npm install` 2025-06-22 22:27:05 +00:00
src Merge branch 'main' into feat/improve-jwt-gen-and-cpu-cores-used 2025-08-18 09:51:32 -07:00
test_data fix(everything): wow, it runs 2025-06-12 00:05:43 +00:00
test_files feat(tests): add more test pdfs 2025-07-12 14:04:04 -07:00
tests feat(jwt): don't manage jwt like this 2025-08-17 03:12:49 +00:00
.env.example feat(jwt): don't manage jwt like this 2025-08-17 03:12:49 +00:00
.env.test feat(tests): more test suite tools 2025-06-17 14:54:59 +00:00
.gitignore feat(webdav): webdav error management and tests 2025-08-17 20:16:46 +00:00
Cargo.lock fix(deps): update rust crate async-trait to v0.1.89 2025-08-16 17:12:09 +00:00
Cargo.toml feat(jwt): don't manage jwt like this 2025-08-17 03:12:49 +00:00
Dockerfile Merge pull request #161 from readur/renovate/rust-1.x 2025-08-14 15:08:10 -07:00
Makefile feat(tests): more test suite tools 2025-06-17 14:54:59 +00:00
README.md feat(docs): add mkdocs requirements 2025-08-16 17:07:29 +00:00
create_multilingual_test_pdfs.py feat(tests): add e2e tests for multiple ocr languages 2025-07-14 04:26:50 +00:00
create_test_pdfs.py feat(tests): add more functionality to the "create_test_pdfs.py" function 2025-07-12 14:05:19 -07:00
docker-compose.test.yml Merge pull request #18 from readur/renovate/node-22.x 2025-06-22 21:32:52 -07:00
docker-compose.yml feat(jwt): don't manage jwt like this 2025-08-17 03:12:49 +00:00
grafana-dashboard.json feat(metrics): add more prometheus metrics, and create grafana dashboard 2025-06-26 21:14:00 +00:00
migrate_tests.py fix(tests): resolve broken test utils 2025-07-04 00:31:53 +00:00
mkdocs.yml feat(docs): update language to be more conversational 2025-08-16 19:55:45 +00:00
nginx.conf fix(dev): lol readur2 -> readur 2025-07-13 18:06:53 +00:00
renovate.json Update renovate.json 2025-06-17 12:12:13 -07:00
requirements.txt feat(docs): add mkdocs requirements 2025-08-16 17:07:29 +00:00
run-tests.sh fix(build): update `npm ci` to `npm install` 2025-06-22 22:27:05 +00:00
view-test-results.sh feat(tests): more test suite tools 2025-06-17 14:54:59 +00:00

README.md

Readur 📄

A powerful, modern document management system built with Rust and React. Readur provides intelligent document processing with OCR capabilities, full-text search, and a beautiful web interface designed for 2026 tech standards.

Features

Feature Description Documentation
🔐 Secure Authentication JWT-based user authentication with bcrypt password hashing + OIDC/SSO support User Management, OIDC Setup
👥 User Management Role-based access control with Admin and User roles User Management Guide
📤 Smart File Upload Drag-and-drop support for PDF, images, text files, and Office documents File Upload Guide
🔍 Advanced OCR Automatic text extraction using Tesseract for searchable document content OCR Optimization
🌍 Multi-Language OCR Process documents in multiple languages simultaneously with automatic language detection Multi-Language OCR Guide
🔎 Powerful Search PostgreSQL full-text search with multiple modes (simple, phrase, fuzzy, boolean) Advanced Search Guide
🔗 Multi-Source Sync WebDAV, Local Folders, and S3-compatible storage integration Sources Guide, S3 Storage Guide
🏷️ Labels & Organization Comprehensive tagging system with color-coding and hierarchical structure Labels & Organization
👁️ Folder Monitoring Non-destructive file watching with intelligent sync scheduling Watch Folder Guide
📊 Health Monitoring Proactive source validation and system health tracking Health Monitoring Guide
🔔 Notifications Real-time alerts for sync events, OCR completion, and system status Notifications Guide
🔌 Swagger UI Built-in interactive API documentation accessible from your profile menu Swagger UI Guide
🎨 Modern UI Beautiful React frontend with Material-UI components and responsive design User Guide
🐳 Docker Ready Complete containerization with production-ready multi-stage builds Installation Guide, Deployment Guide
High Performance Rust backend for speed and reliability Architecture Documentation
📊 Analytics Dashboard Document statistics and processing status overview Analytics Dashboard Guide

🚀 Quick Start

# Clone the repository
git clone https://github.com/perfectra1n/readur
cd readur

# Start all services
docker compose up --build -d

# Access the application
open http://localhost:8000

Default login credentials:

  • Username: admin
  • Password: readur2024

⚠️ Important: Change the default admin password immediately after first login!

📚 Documentation

Getting Started

Core Features

Deployment & Operations

Development

Advanced Topics

🏗️ Architecture

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   React Frontend │────│   Rust Backend  │────│  PostgreSQL DB  │
│   (Port 8000)   │    │   (Axum API)    │    │   (Port 5433)   │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         │              ┌─────────────────┐             │
         └──────────────│  File Storage   │─────────────┘
                        │  + OCR Engine   │
                        └─────────────────┘

📋 System Requirements

Minimum

  • 2 CPU cores, 2GB RAM, 10GB storage
  • Docker or manual installation prerequisites

🤝 Contributing

We welcome contributions! Please see our Contributing Guide and Development Setup for details.

🔒 Security

  • Change default credentials immediately
  • Use HTTPS in production
  • Regular security updates
  • See deployment guide for security best practices

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

Screenshots

📞 Support


Made with ❤️ and by the Readur team