Files
spanish-diary/README.md
T

91 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Mi Diario — 西班牙语日记学习工具
一个纯前端的西班牙语学习应用,基于外研社《现代西班牙语1》整理知识库。
## 功能
- 📝 西班牙语日记:新建、编辑、删除、按日期管理
- 🌐 实时翻译:输入西语自动显示英语和中文对照
- 🔊 发音朗读:支持西语、英语、中文三种语言(Web Speech API)
- 🔊 Piper 回退:手机无系统 TTS 时自动调用自建 Piper 服务并缓存音频
- 📖 单词本:自动提取输入中的关键词并给出解释,支持点击发音
- 📕 专用单词本页面:支持搜索、分类筛选、添加、编辑、删除和三语朗读
- 📚 语法知识库:按教材整理的 40 个语音和语法知识点
## 使用
直接打开 `index.html` 即可使用(推荐 Edge / Chrome)。
## 阶段2:Python 后端
安装依赖:
```powershell
cd spanish-diary
python -m pip install -r server/requirements.txt
```
启动服务:
```powershell
python server/app.py
```
浏览器访问:
```text
http://localhost:5000
```
默认管理员账号:
```text
用户名:admin
密码:admin123
```
> 生产环境请先修改管理员密码,并通过环境变量设置 `SECRET_KEY`。
## 文件结构
```
index.html — 主页面
style.css — 主页面样式
app.js — 应用逻辑
api.js — 后端 API 客户端
db.js — IndexedDB 数据存储
translate.js — 翻译模块
speech.js — 发音模块
login.html — 登录/注册
admin.html — 用户管理
knowledge.html — 知识库首页
knowledge/ — 6 个分类知识页面
server/ — Python Flask 后端
```
## 数据存储
阶段 1 使用浏览器 IndexedDB 本地存储,无需后端。
阶段 2 使用 SQLite 数据库:
```text
server/data/spanish_diary.db
```
## 阶段2 功能
- 用户注册、登录、登出
- 用户修改密码
- 管理员添加、禁用、删除用户
- 管理员重置用户密码
- 用户日记数据隔离
- 共享知识库
- 每用户翻译配置(本地 / MyMemory / 自定义接口)
- 实时翻译、选中翻译、保存和中译西统一调用每用户翻译配置
- LibreTranslate 等自定义接口默认使用 `zh-hans` 表示简体中文,可通过扩展配置 `zh_code` 覆盖
- 每用户日记统计
- 每用户单词收藏
- 移动端左上菜单、编辑区优先、左滑显示翻译
- 手机、平板、桌面响应式适配