Readest 是一款开源的电子书阅读器,专为沉浸式和深度阅读体验而设计。作为 Foliate 的现代化重构版本,它利用了 Next.js 16 与 Tauri v2 框架,为用户在 macOS、Windows、Linux、Android、iOS 以及 Web 平台上提供流畅一致的跨平台阅读体验。
功能特性
✅ 已实现功能
| 功能 |
描述 |
状态 |
| 多格式支持 |
支持 EPUB、MOBI、KF8 (AZW3)、FB2、CBZ、TXT、PDF(实验性) |
✅ |
| 滚动/翻页阅读模式 |
在滚动或分页阅读模式之间切换。 |
✅ |
| 全文搜索 |
搜索全书以查找相关章节。 |
✅ |
| 标注和高亮 |
添加高亮、书签和笔记以增强阅读体验,并使用即时模式实现更快的交互。 |
✅ |
| 词典/维基百科查询 |
阅读时即时查找单词和术语。 |
✅ |
| 并行阅读 |
在分屏视图中同时阅读两本书或文档。 |
✅ |
| 自定义字体和版式 |
调整字体、版式、主题模式和主题颜色,获得个性化体验。 |
✅ |
| 代码语法高亮 |
阅读软件手册时,代码示例显示丰富的色彩。 |
✅ |
| 文件关联和打开方式 |
在文件浏览器中一键快速在 Readest 中打开文件。 |
✅ |
| 书库管理 |
组织、排序和管理您的整个电子书库。 |
✅ |
| OPDS/Calibre 集成 |
集成 OPDS/Calibre 以访问在线图书馆和目录。 |
✅ |
| DeepL 和 Yandex 翻译 |
从单个句子到整本书——即时翻译。 |
✅ |
| 文本转语音 (TTS) 支持 |
享受流畅的多语言旁白——甚至在同一本书内也支持。 |
✅ |
| 跨平台同步 |
在所有支持的平台上同步书籍文件、阅读进度、笔记和书签。 |
✅ |
| 无障碍功能 |
提供完整的键盘导航,并支持 VoiceOver、TalkBack、NVDA 和 Orca 等屏幕阅读器。 |
✅ |
| 视觉与专注辅助 |
阅读标尺、逐段阅读模式和速读功能。 |
✅ |
界面截图






环境要求
- Node.js 和 pnpm 用于 Next.js 开发
- Rust 和 Cargo 用于 Tauri 开发
为了获得自行构建 Readest 的最佳体验,请使用较新版本的 Node.js 和 Rust。有关在不同平台上设置开发环境先决条件的详细信息,请参阅 Tauri 文档。
nvm install v22
nvm use v22
npm install -g pnpm
rustup update
快速开始
要开始使用 Readest,请按照以下步骤克隆并构建项目。
1. 克隆仓库
git clone https://github.com/readest/readest.git
cd readest
2. 安装依赖
# 代码更新时可能需要重新运行此命令
git submodule update --init --recursive
pnpm install
# 将供应商的 dist 库复制到公共目录
pnpm --filter @readest/readest-app setup-vendors
3. 验证依赖安装
要确认所有依赖都已正确安装,请运行以下命令:
pnpm tauri info
此命令将显示有关您平台上已安装的 Tauri 依赖项和配置的信息。请注意,输出可能因操作系统和环境设置而异。请针对您的平台检查输出,以发现任何潜在问题。
对于 Windows 目标,必须安装 “Build Tools for Visual Studio 2022”(或更高版本的 Visual Studio)和 “Desktop development with C++” 工作负载。对于 Windows ARM64 目标,必须安装 “VS 2022 C++ ARM64 build tools” 和 “C++ Clang Compiler for Windows” 组件。并确保 clang 可以在路径中找到,例如将 C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\Llvm\x64\bin 添加到环境变量 Path 中。
4. 构建开发版本
# 启动 Tauri 应用的开发模式
pnpm tauri dev
# 或启动 Web 应用的开发模式
pnpm dev-web
# 使用 OpenNext 构建预览 Web 应用
pnpm preview
对于 Android/iOS 平台:
Android:
# 初始化 Android 环境(仅需运行一次)
rm apps/readest-app/src-tauri/gen/android
pnpm tauri android init
git checkout apps/readest-app/src-tauri/gen/android
pnpm tauri android dev
# 或者如果您想在真实设备上开发
pnpm tauri android dev --host
iOS:
# 设置 iOS 环境(仅需运行一次)
pnpm tauri ios init
pnpm tauri ios dev
# 或者如果您想在真实设备上开发
pnpm tauri ios dev --host
5. 构建生产版本
pnpm tauri build
pnpm tauri android build
pnpm tauri ios build
如果您遇到任何问题,请参考我们的发布脚本: https://github.com/readest/readest/blob/main/.github/workflows/release.yml
6. 使用 Nix 设置开发环境
如果您安装了 Nix,可以利用 flake 进入包含所有必要依赖的开发 shell:
nix develop ./ops # 进入 web 应用的开发 shell
nix develop ./ops#ios # 进入 ios 应用的开发 shell
nix develop ./ops#android # 进入 android 应用的开发 shell
项目地址
项目的详细文档和最新动态,你可以在其 GitHub 仓库中找到:https://github.com/readest/readest
Readest 集成了强大的现代化前端技术与 跨平台 桌面应用框架,为电子书阅读提供了一个高度可定制且功能丰富的开源选择。如果你对技术实现细节或参与贡献感兴趣,不妨前往其代码仓库一探究竟。