这个项目能做什么

Readur 是一个开源文档管理与 OCR 平台,采用 Rust 后端和 React 前端构建。它面向希望借助现代化 Web 界面来整理、处理并搜索其数字文档的个人与团队。 OCR 与文本提取 Readur 使用 Tesseract OCR 引擎从 PDF 文件、扫描图像以及多种文档格式中提取可搜索文本。它支持同时识别多种语言并具备自动语言检测功能,使用户能够在单次处理中处理多语言文档。该平台还可解析原生 Office 文档格式,包括 DOCX 和 XLSX,无需额外依赖。旧版 Microsoft Word .doc 文件可通过 antiword 或 catdoc 进行可选支持。 文档组织与存储 文件可从多种来源导入:主机系统上的本地文件夹、远程 WebDAV 服务器以及兼容 S3 的对象存储。监视文件夹功能会监控目录中的新增或变更文件,并通过智能同步调度自动处理它们。文档使用一套完善的标签系统进行组织,该系统支持颜色编码和层级化标签结构。 搜索与检索 全文搜索由 PostgreSQL 提供支持,具备强大的索引和查询能力。搜索支持多种模式,包括简单文本匹配、短语搜索、模糊匹配和布尔逻辑。这有助于在大型文档集合中快速发现内容。 身份验证与访问控制 用户身份验证使用 JWT 令牌和 bcrypt 密码哈希。基于角色的访问控制区分 Admin 和 User 角色。提供 OpenID Connect (OIDC) 集成以支持单点登录,使其兼容企业身份提供商。 架构与部署 该系统由三个主要组件构成:运行在 8000 端口上的 React 前端、基于 Axum Web 框架构建的 Rust 后端,以及 PostgreSQL 数据库。整个技术栈随附 Docker Compose 以便于部署,同时也支持手动安装。内置的 Swagger UI 提供可从 Web 界面访问的交互式 API 文档。 健康检查与通知 Readur 包含主动的源验证和健康监控,以确保存储连接保持正常。实时通知会向用户提醒同步事件、OCR 完成状态以及系统健康变化。 文档与支持材料托管于 docs.readur.app,该项目采用 MIT License 许可。