# 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` 覆盖 - 每用户日记统计 - 每用户单词收藏 - 移动端左上菜单、编辑区优先、左滑显示翻译 - 手机、平板、桌面响应式适配