EnglishReadVoyage 是一个帮助英语学习者通过加强阅读提升英语水平的工具。它提供支持添加、编辑各类英语读物,支持即点即查的词典,原文点读,让英语学习更高效、更有趣。
.apkg 格式,可直接导入 Anki 记忆卡进行学习。卡片正面为单词所在句子(目标单词加粗标红),背面为句子翻译和单词释义本项目提供 Docker 镜像部署方式,无需安装 Python 或 Node.js。
如果你需要自行构建镜像(如自定义功能),可以运行以下命令构建本地镜像:
# Windows(推荐使用 PowerShell)
.\docker\all-in-one\build.ps1
# Linux/Mac
bash docker/all-in-one/build.sh
构建完成后会生成 englishreadvoyage:latest 本地镜像,后续可直接使用。
也可以跳过此步骤,直接从网上拉取已构建好的镜像(见下文)。
如果不想本地构建,可以直接从 CNB(cnb.cool)拉取已构建好的镜像:
# 拉取最新镜像
docker pull docker.cnb.cool/wtrw09/englishreadvoyage:latest
镜像拉取完成后,参照下方Docker 部署启动步骤启动即可。
这是最简单的部署方式,无需安装 Python 或 Node.js。
# 1. 创建一个目录存放配置和数据(位置随意,以 myapp 为例)
mkdir myapp && cd myapp
# 2. 下载 docker-compose.yml
# 从项目 docker/all-in-one/ 目录复制 docker-compose.yml 到当前目录
# 3. 修改镜像来源(可选)
# 编辑 docker-compose.yml,将 image 改为 CNB 镜像地址即可从网上拉取
# 详见下方的「镜像来源说明」
# 4. 启动服务
docker-compose up -d
注意:新版 Docker 也支持不带短横线的
docker compose命令,两者等价,任选其一。
镜像来源说明:镜像名在
docker-compose.yml的image字段设置,可根据实际需要修改:
- 使用本地镜像:
image: englishreadvoyage:latest(需先通过build.ps1构建)- 使用CNB 镜像:
image: registry.cnb.cool/wtrw09/englishreadvoyage:latest(首次自动拉取)两种方式都是用
docker-compose up -d启动,只需修改 yml 中的一行即可。
容器启动后会自动完成以下操作:
数据文件将保存在运行目录下的 backend/ 子目录中。
默认端口为 8888。如需修改,编辑当前目录下的 docker-compose.yml,将 8888:80 改为 你想要的端口:80:
ports:
- "9999:80" # 将前端端口改为 9999
# 查看日志
docker logs -f englishread
# 重启服务
docker-compose restart
# 停止服务
docker-compose down
# 更新镜像后重新部署(保留数据)
docker-compose pull && docker-compose up -d
启动后打开浏览器访问:http://localhost:8888
默认管理员账号:
adminadmin从源码构建:
android/ 目录frontend/ 目录下构建前端产物:cd frontend
npm install
npm run build
使用说明:
从源码构建:
harmony/ 目录frontend/ 目录下构建前端产物:cd frontend
npm install
npm run harmony:sync
使用说明:
主要用于把英文翻译成中文,是免费机器翻译,个人使用额度足够。目前没有找到其他更好的免费翻译,只配置这个了。
韦氏词典(Merriam-Webster)提供更权威、更详细的英文释义。如需启用:
如需本地词典查询(速度快、无需联网),可按以下步骤配置:
ecdict.db 文件ecdict.dbbackend/data/ 目录,将 ecdict.db 放入其中
mkdir backend/data
# 然后将 ecdict.db 放入 backend/data/ 目录
backend/data/ 目录已存在,直接复制进去即可docker compose restart如果没有放置该文件,词典查询会自动使用在线 FreeDictionaryAPI,不影响其他功能。
项目默认使用微软 Edge-TTS,完全免费且朗读标准,是开箱即用的最佳选择。
如需更高质量或更多音色,可配置以下付费语音服务:
| 服务 | 类型 | 特点 |
|---|---|---|
| Azure TTS | 微软 Neural | 高质量神经网络语音,音色丰富 |
| 豆包 TTS | 字节在线 | 中文语音自然,支持情感 |
| MiniMax TTS | 国内在线 | 多语言支持,有免费额度 |
| 硅基流动 TTS | 国内在线 | 多款模型可选 |
| Kokoro TTS | 本地模型 | 需本地部署,音质优秀 |
配置方式:在管理员界面的「语音设置」中选择服务并填入对应 API Key。
无论是网页端还是手机 App,登录页面都可以配置服务器地址和端口(默认 http://localhost:8888)。如果你将 Docker 部署在另一台设备上,输入该设备的 IP 地址即可。
backend/data/ 挂载卷中backend/data/ 目录下的数据库文件docker-compose.yml 的 environment 中设置 SECRET_KEY 为强密码本项目代码托管在以下平台,可按需访问: