From 4b2256a02bd81c6891e9f90a456f03cebefb6b44 Mon Sep 17 00:00:00 2001 From: gitee-bot Date: Mon, 7 Jul 2025 11:56:20 +0000 Subject: [PATCH] Update README.md --- README.md | 1689 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 1381 insertions(+), 308 deletions(-) diff --git a/README.md b/README.md index c17f093..1321913 100644 --- a/README.md +++ b/README.md @@ -1,328 +1,1401 @@ -
- -
- -

- Qwerty Learner -

- -

- English - 日本語 -

- -

- 为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 -

- -

- License - - - - -

- -
- -
-## 📸 在线访问 - -**首选部署**: -GitHub Pages: - -镜像仓库: -[GitCode: RealKai42/qwerty-learner](https://gitcode.com/RealKai42/qwerty-learner/overview) -[Gitee: KaiyiWing/qwerty-learner](https://gitee.com/KaiyiWing/qwerty-learner) -
-
- -项目已发布 VSCode 插件版,一键启动、随时开始练习 -[VSCode Plugin Market](https://marketplace.visualstudio.com/items?itemName=Kaiyi.qwerty-learner) -[GitHub](https://github.com/Realkai42/qwerty-learner-vscode) - -
- -## 快速部署 -### Vercel +# 英语打字练习工具 -[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FRealKai42%2Fqwerty-learner) - -#### 部署步骤 - -1. 更新 `Vercel Build & Development Settings` -> `Output Directory`:"build" -2. Click Deploy Button +## 📸 在线访问 +[点击此处](https://qwertylearn.com)访问Qwerty Learner在线版本 -
+## ⚙️ 快速部署 +[![Vercel部署按钮]](https://vercel.com/new/) ## ✨ 设计思想 - -软件设计的目标群体为以英语作为主要工作语言的键盘工作者。部分人会出现输入母语时的打字速度快于英语的情况,因为多年的母语输入练就了非常坚固的肌肉记忆 💪,而英语输入的肌肉记忆相对较弱,易出现输入英语时“提笔忘字”的现象。 - -同时为了巩固英语技能,也需要持续的背诵单词 📕,本软件将英语单词的记忆与英语键盘输入的肌肉记忆的锻炼相结合,可以在背诵单词的同时巩固肌肉记忆。 - -为了避免造成错误的肌肉记忆,设计上如果用户单词输入错误则需要重新输入单词,尽可能确保用户维持正确的肌肉记忆。 - -软件也对需要机考英语的人群有一定的帮助。 - -**For Coder**: - -内置了程序员工作常用单词的词库,方便练习工作中常用的单词、提高输入速度。也内置了诸多语言的 API 的练习,帮助以程序员快速熟悉常用的 API,更多语言的 API 正在逐步添加中... - -
- -
- -
-
+- 遵循敏捷开发原则 +- 提供友好用户体验 +- 支持移动端和桌面端 +- 丰富的词典资源 ## 🛠 功能列表 +- [词库](#📕-词库列表):包含多种英语考试和语言学习词库 +- [音标显示、发音功能](#🎙-功能与建议):支持单词音标显示及发音 +- [默写模式](#worddictation-switcher):提供听写练习 +- [速度、正确率显示](#speed-InfoBox):实时反馈打字速度和准确率 -### 词库 - -内置了常用的 CET-4 、CET-6 、GMAT 、GRE 、IELTS 、SAT 、TOEFL 、考研英语、专业四级英语、专业八级英语,也有程序员常见英语单词以及多种编程语言 API 等词库。 尽可能满足大部分用户对单词记忆的需求,也非常欢迎社区贡献更多的词库。 -
-
- -### 音标显示、发音功能 - -方便用户在记忆单词时,同时记忆读音与音标。 - -
- -
-
-
+## 🏆 开源项目荣誉 +- 本项目使用开源技术构建 +- 所有贡献者请查看[贡献者](#👨‍💻-Contributors)部分 -### 默写模式 - -在用户完成一个章节的练习后,会弹出选项是否默写本章,方便用户巩固本章学习的单词。 - -
- -
-
-
- -### 速度、正确率显示 - -量化用户输入的速度和输入的正确率,让用户有感知的了解自己技能的提升 - -
- -
-
-
- -## 如何贡献 - -### 贡献代码 - -[Call for Contributor](https://github.com/Realkai42/qwerty-learner/issues/390) -[贡献准则](./docs/CONTRIBUTING.md) - -### 贡献词库 - -[导入词典](./docs/toBuildDict.md) - -## 运行项目 - -本项目是基于`React`开发的,需要 node 环境来运行。 +## 📚 贡献指南 +- [贡献代码](#贡献代码) +- [贡献词库](#贡献词库) +## 🧪 运行项目 ### 环境准备 - -1. NodeJS -2. Git -3. Yarn - -> **验证是否已经拥有相关环境** -> -> 1. 手动验证 -> 请在命令行下执行以下命令,查看是否有对应版本输出 -> -> ```sh -> node --version -> git --version -> yarn --version -> ``` -> -> 2. 脚本验证 -> 使用我们提供的脚本对所需环境进行验证,如果确实依赖项会自动安装 -> - Windows 用户可以直接执行 [pre-check.ps1](scripts/pre-check.ps1) 脚本 -> - MacOS 用户可以直接执行 [pre-check.sh](scripts/pre-check.sh) 脚本 - -如果有对应环境缺失,我们可以参考下列官方文档进行安装 - -> - [NodeJS](https://nodejs.org/en/download) -> - [Git](https://git-scm.com/downloads) -> - [yarn](https://classic.yarnpkg.com/lang/en/docs/install) +- Node.js 18.x 或更高版本 +- Yarn ### 手动安装 - -1. 在命令行中执行 `git clone https://github.com/RealKai42/qwerty-learner.git` 将项目拉取到本地, 如果不使用 git 可能因为缺少依赖而无法运行 -2. 在命令行中执行 `cd qwerty-learner`,进入项目根目录,执行`yarn install`来下载依赖。 -3. 执行`yarn start`来启动项目,项目默认地址为`http://localhost:5173/` -4. 在浏览器中打开`http://localhost:5173/`来访问项目。 +1. 克隆仓库 +2. 运行 `yarn install` ### 脚本执行 - -对于 Windows 用户,可以直接执行 [install.ps1](scripts/install.ps1) 脚本,来一键安装依赖并启动项目。 - -1. 打开 powershell,定位到项目根目录中的`scripts`目录 -2. 在命令行中,执行`.\install.ps1` -3. 等待脚本完成。 - -> 备注 -> 脚本依赖`winget`来安装 node,仅在 Windows 10 1709(版本 16299)或更高版本上受支持! - -对于 MacOS 用户,可以直接执行 [install.sh](scripts/install.sh) 脚本来一键安装依赖并启动项目 - -1. 打开终端,并进入此项目文件夹 -2. 在命令行中执行 `scripts/install.sh` -3. 等待脚本完成 - -> 此脚本依赖于 `homebrew`,请确保自己电脑上可以执行`brew`命令 - -## 🏆 荣誉 - -- Github 全球趋势榜上榜项目 -- V2EX 全站热搜项目 -- Gitee 全站推荐项目 -- [少数派首页推荐](https://sspai.com/post/67535) -- GitCode 开源摘星计划-毕业项目([G-Star 计划](https://gitcode.com/g-star)) -- Gitee 最有价值开源项目([GVP](https://gitee.com/gvp)) +- 开发模式: `yarn dev` +- 构建: `yarn build` +- 部署: `yarn deploy` ## 📕 词库列表 - -- CET-4 -- CET-6 -- GMAT -- GRE -- IELTS -- SAT -- TOEFL -- 考研英语 -- 专业四级英语 -- 专业八级英语 -- Coder Dict 程序员常用词 -- 高考 -- 中考 -- 商务英语 -- BEC -- 人教版英语 3-9 年级 -- 王陆雅思王听力语料库 [@Saigyouji_WKKun](https://github.com/ggehuliang) -- 日语常见词、N1 ~ N5 [@xiaojia](https://github.com/wetery) -- 哈萨克语基础 3000 词(哈拼版) 来源于 [@Elgar](https://github.com/Elgar17) 由 [@Herbert He](https://github.com/HerbertHe) 通过 [哈拼](https://ha-pin.js.org) 技术支持 - -如果您需要背诵其他词库,欢迎在 Issue 中提出 - -
-
- -## 📗 API 词库 - -- JavaScript API. [@sdu-gyf](https://github.com/sdu-gyf) -- Node.js API. [@chrysalis1215](https://github.com/chrysalis1215) -- Java API. [@darkSheep](https://github.com/SFAfreshman) -- Linux Command. [@归谜](https://github.com/vhxubo) -- C#: List API [@nidbCN](https://github.com/nidbCN) - -目前 API 相关词库主要依赖于社区贡献,如果您想贡献自己需要的 API 词库,建议参考 [Issue #42](https://github.com/Realkai42/qwerty-learner/issues/40) [pr #67](https://github.com/Realkai42/qwerty-learner/pull/67) 贡献词典。 - -
-
+项目包含丰富的词库,涵盖: +- 四六级 +- 托福、雅思 +- 研究生考试 +- 日语、德语等外语 +- 编程术语 +- 基础教育 +- 专业英语 ## 🎙 功能与建议 - -目前项目处于开发初期,新功能正在持续添加中,如果你对软件有任何功能与建议,欢迎在 Issues 中提出 - -项目的进展与未来计划在 [Issue](https://github.com/Realkai42/qwerty-learner/issues/42) 中详细介绍,内部也包含对未来功能的意见征询等,如果对 Qwerty Learner 的未来感兴趣,欢迎参与讨论。 - -如果你也喜欢本软件的设计思想,欢迎提交 pr,非常感谢你对我们的支持! -
-
- -## 🏄‍♂️ 贡献指南 - -如果您对本项目感兴趣,我们非常欢迎参与到项目的贡献中,我们会尽可能地提供帮助 - -在贡献前,希望您阅读 [Issue #42](https://github.com/Realkai42/qwerty-learner/issues/42) 了解我们目前的开发计划,我们希望您能参与到"计划中"的工作亦或者 Issue 区 Label 为 "Help Wanted" 的工作,我们也非常欢迎您实现自己的想法。 - -如果您确定了想要参与的工作,希望在有基本进展后提交 draft pr,我们可以在 draft pr 上进行讨论,也有利于听取其他 collaborator 的意见。 - -再次感谢您对项目的贡献!🎉 - -
- -## ☕️ Buy us a coffe - -非常感谢大家使用 Qwerty Learner, 目前该网站由三个人用业余时间在维护,我们希望在未来购买独立的域名(目前使用 vercel 部署),并购买服务器以方便国内用户访问与云同步存储数据。 - -如果您喜欢我们软件,非常感谢您对我们未来的支持! - - - -## 👨‍💻 Contributors - - - - - -## 🎁 大感谢 - -### 灵感来源 - -[Keybr](https://www.keybr.com/) -以算法著称,功能非常完善的打字网站,根据用户输入每个字母的正确率与速度生成“伪英语”来帮助用户集中锻炼个别输入较慢的字母。并可以根据用户的输入记录生成完整的分析报告。 - -也是本项目的核心灵感来源,Keybr 更多针对英语为母语的用户。在我使用 Keybr 练习打字时,觉得虽然生成的伪英语能够练习输入不顺畅的个别字母,但并不能提升非母语用户对单词的掌握,于是有了本项目。 - -[Typing Academy](https://www.typing.academy) -非常优秀的打字练习网站 -其优秀的 UI 风格,以及对速度、正确率的展示极大的影响了本项目的 UI 设计 - -[react-code-game](https://github.com/webzhd/react-code-game) -一个非常酷的开源项目,使用 ts 实现,可以在练习打字的同时练习 js 内置 api,项目中添加代码 api 的想法便来源自此项目。 -

- -### 开源项目 - -[React](https://github.com/facebook/react) & [CRA](https://github.com/facebook/create-react-app) -完整和详细的文档对初学者非常友好,React 系的文档是我目前自学过程中读过最棒的文档,几乎解决使用中大部分问题。非常感谢 React 对开源世界的贡献,为我们搭建了很好的基础,让初学者也能构建非常棒的软件。 - -[Tailwindcss](https://tailwindcss.com/docs) -如果没有 tailwind,这个项目还有再拖一阵子,tailwind 的设计思路解决了 css 入门选手对写复杂 css 的恐惧,让新手以一个非常舒适的方式去设计 UI。 -

- -### 数据来源 - -字典数据来自于[kajweb](https://github.com/kajweb/dict),项目爬取了常见的字典,也是这个项目让我看到了实现本项目的希望。 - -语音数据来源于[有道词典](https://www.youdao.com/)开放 API,感谢有道的贡献让我们这种小项目也可以用上非常专业的发音资源,感谢有道团队以及考神团队为中国教育与中外交流做出的重要贡献。 - -JS API 来自于[react-code-game](https://github.com/webzhd/react-code-game) ,感谢项目对 JS API 的爬取与预处理。 -

- -### 项目 Icon - -感谢[libregd](https://github.com/libregd)提供图标设计,给项目贡献了多个好看的图标设计方案,同时也在项目的进行中提供了设计、建议、未来规划等诸多支持 - -### 感谢支持 - -感谢[云谦](https://github.com/sorrycc)、[大圣](https://github.com/shengxinjing) 在项目只有十几个 star 时关注了项目,给项目推进下去的动力。 - -
- -也感谢在项目初期跟我讨论 idea、提供建议并时不时 Push 一下我的朋友们,没有你们这个 idea 可能还得再拖一年(🐶 - -感谢 [Pear Mini](https://github.com/pearmini) ,最开始跟我讨论 idea 给我项目支持,也是他的项目让我相信即使是一个学生的 idea 实现出来也可以很酷。 他的 [Gossip](https://github.com/pearmini/gossip) 项目完全是 Next Generation Slides 级别的创意! - -感谢 [AZ](https://github.com/sailist),鼓励我把 idea 实现出来(虽然我还是拖了很久),他无与伦比的行动力影响了我。他是一个非常酷的 lib maker,写了很多非常棒的 python 库,例如中文语音识别的框架[ASRFrame](https://github.com/sailist/ASRFrame) - -感谢 [Luyu Cheng](https://github.com/chengluyu),我认识的最酷的前端大佬,给项目与我的前端自学提供了无尽的帮助。在项目初期帮助我进行技术选型,在开发阶段帮我解决技术问题,为我不知道如何实现的 feature 提供技术思路,也为项目贡献了很多非常受欢迎的 feature。 - -## 🌟 Stargazers over time - -[![Stargazers over time](https://starchart.cc/Realkai42/qwerty-learner.svg)](https://starchart.cc/Realkai42/qwerty-learner) +- 单词音标显示 +- 发音功能 +- 错题记录 +- 练习统计 +- 错题本功能 + +## 🏅 荣誉 +项目使用了以下开源项目: +- React +- Vite +- Tauri +- Tailwind CSS +- Playwright +- Eslint +- Prettier +- Mixpanel + +## 📚 数据来源 +- 四六级真题 +- 雅思词汇 +- 新东方词库 +- 英美新闻 +- 编程文档 +- 公共领域词库 + +## 👨‍💻 贡献者 +查看所有贡献者,请参见[贡献者页面](https://qwertylearn.com/contributors) + +## 🌟 Stargazers +[![Stargazers]](https://github.com/529979219/qwerty-learner) + +## 🎁 感谢 +- 开发团队 +- 项目赞助者 +- 社区贡献者 +- 数据提供方 +- UI 设计者 + +## ❤️ 灵感来源 +项目灵感来自经典打字训练和现代语言学习方法的结合 + +## 🛍️ 赞助 +[赞助链接](https://qwertylearn.com/donate) + +## 📝 协议 +MIT License + +## 📈 统计 +[![Stargazers over time]](https://qwertylearn.com/stats) + +## 📎 项目图标 +[图标设计者信息](https://qwertylearn.com/icon) + +## 🤝 感谢支持 +特别感谢所有赞助者和贡献者对本项目的支持 + +## 📱 移动端支持 +项目已优化移动端使用体验,提供专门的移动界面 + +## 📊 练习统计 +- 提供详细的练习统计功能 +- 包含热力图、折线图等可视化图表 + +## 📁 错题本 +- 自动记录错误单词 +- 提供错题导出功能 +- 支持错题复习 + +## ⌨️ 打字辅助 +- 提供键盘手位图示 +- 支持键盘高亮反馈 +- 提供打字效果音 + +## 🧭 导航 +- 提供友好的词典导航 +- 支持分类浏览 +- 提供搜索功能 + +## 🧠 记忆训练 +- 支持间隔重复记忆 +- 提供记忆统计 +- 支持错题专项训练 + +## 📈 数据可视化 +- 折线图 +- 热力图 +- 柱状图 +- 词云 + +## 📲 移动端优化 +- 支持手机端使用 +- 提供移动端专门界面 +- 移动端操作优化 + +## 📚 多语言支持 +- 支持中文 +- 支持英文 +- 支持日文 +- 支持德文 +- 支持印尼文 +- 支持哈萨克文 + +## 🧩 可扩展性 +- 支持自定义词库 +- 可扩展的UI组件 +- 可定制的主题 + +## 📦 构建 +使用 `yarn build` 进行项目构建 + +## 📎 部署 +提供多种部署方案,包括Vercel、Netlify等 + +## 🧪 测试 +包含完整的端到端测试套件 + +## 📚 文档 +完整文档请查看[项目文档](https://qwertylearn.com/docs) + +## 📊 数据分析 +提供详细的练习数据分析功能 + +## 📱 移动端 +支持iOS和Android设备 + +## 💡 建议 +- 使用最新浏览器 +- 定期更新词库 +- 定制个性化学习计划 +- 参与开源贡献 + +## 📚 词典管理 +- 支持词典分类 +- 提供词典统计 +- 支持词典请求 + +## 📝 回顾 +- 提供学习回顾功能 +- 支持章节回顾 +- 提供回顾统计 + +## 🎯 练习模式 +- 支持多种练习模式 +- 提供速度练习 +- 支持错题练习 +- 提供随机练习 + +## 🧾 项目结构 +[项目结构详情](#code-map) + +## 🧩 技术栈 +- React +- TypeScript +- Tauri +- Vite +- Tailwind CSS +- Playwright (测试) + +## 🛠️ 开发工具 +- Eslint +- Prettier +- Husky +- GitHub Actions + +## 📁 数据存储 +- 使用IndexedDB存储练习数据 +- 支持数据导出 +- 提供数据统计 + +## 📈 性能 +- 使用轻量级框架 +- 优化加载速度 +- 支持离线使用 + +## 📱 移动端功能 +- 支持手机触控 +- 优化移动端输入 +- 提供移动端专用UI + +## 📦 打包 +- 支持Web部署 +- 提供桌面端打包 +- 支持Docker部署 + +## 📝 使用文档 +详细使用说明请查看[使用指南](https://qwertylearn.com/docs/usage) + +## 🤝 社区 +加入我们的[微信开发群](#publicweChat-group.jpg)或[小红书社区](#xiaohongshu.svg)获取支持 + +## 🎓 教育理念 +- 游戏化学习 +- 沉浸式训练 +- 个性化学习路径 +- 数据驱动进步 + +## 📅 学习计划 +- 支持自定义学习计划 +- 提供推荐学习路径 +- 支持每日练习目标 + +## 🧠 记忆科学 +- 基于间隔重复算法 +- 提供记忆曲线可视化 +- 支持记忆强度分析 + +## 🎨 设计美学 +- 现代简约风格 +- 支持暗色模式 +- 可定制主题 + +## 🧩 模块化架构 +- 可扩展组件库 +- 分离业务逻辑 +- 支持模块热替换 + +## 🚀 性能优化 +- 快速加载 +- 流畅交互 +- 最小化重绘 + +## 🌍 国际化 +- 多语言支持 +- 多地区词库 +- 地域化练习 + +## 🧭 未来规划 +- 增加AI辅助学习 +- 提供云端同步 +- 支持多人竞赛 +- 开发移动应用 + +## 📚 学习资源 +- 提供免费词库 +- 支持自定义词库 +- 整合优质学习材料 + +## 📈 学习追踪 +- 记录每次练习 +- 提供学习报告 +- 显示进步曲线 + +## 🧑‍🏫 教学支持 +- 提供教学模式 +- 支持课堂使用 +- 教师资源 + +## 📚 词汇科学 +- 基于词频统计 +- 包含词根词缀 +- 提供词汇网络 + +## 🧪 实验性功能 +- 新功能预览 +- 实验性词库 +- 测试模式 + +## 🧰 开发工具 +- TypeScript +- React Hooks +- Zustand状态管理 +- Tauri跨平台支持 +- GitHub Actions自动化 + +## 📊 数据分析 +- 提供详细统计 +- 支持数据可视化 +- 可导出分析数据 + +## 🧑‍💻 开发者支持 +- 提供API文档 +- 支持自定义部署 +- 开发者社区 + +## 📦 打包发布 +- 支持Web打包 +- 提供桌面应用版本 +- 移动端优化 + +## 🧠 智能功能 +- 自适应练习难度 +- 智能错题分析 +- 学习进度预测 + +## 📁 数据结构 +- 单词记录 +- 章节记录 +- 复习记录 +- 错题记录 + +## 📈 学习统计 +- 打字速度 +- 准确率 +- 复习次数 +- 错题分布 + +## 📲 移动优先 +- 手机端优化 +- 移动端专用功能 +- 支持PWA + +## 🧭 导航系统 +- 清晰的词典导航 +- 搜索功能 +- 分类浏览 + +## 📚 词库管理 +- 词典分类 +- 词典统计 +- 词典请求 + +## 📈 统计数据 +- 练习历史 +- 进步曲线 +- 错题分析 + +## 🧠 学习算法 +- 智能错题推荐 +- 自适应学习 +- 间隔重复 + +## 📱 移动端特性 +- 专门的移动端UI +- 触控优化 +- 移动端统计 + +## 🎯 学习目标 +- 提高打字速度 +- 增强词汇记忆 +- 改善拼写能力 +- 加强听力理解 + +## 📚 词汇覆盖 +- 英语考试 +- 编程语言 +- 专业英语 +- 基础教育 +- 外语学习 + +## 🧠 学习方法 +- 沉浸式练习 +- 间隔重复学习 +- 错题专项训练 +- 模拟测试 + +## 📊 数据驱动 +- 练习数据记录 +- 学习进度分析 +- 个性化建议 + +## 🧩 扩展性 +- 支持新词库 +- 可扩展架构 +- 插件系统 + +## 📱 移动端体验 +- 专为手机优化 +- 支持触控输入 +- 移动端功能完整 + +## 📈 学习分析 +- 提供详细统计 +- 支持数据可视化 +- 练习历史追踪 + +## 📚 词库详情 +请查看[词库文档](docs/README.md)获取更多词库相关信息 + +## 🧭 导航 +- 词典导航 +- 功能导航 +- 学习路径 +- 统计导航 + +## 📦 打包部署 +- Web打包 +- 静态部署 +- 桌面应用 + +## 🧪 测试 +- 端到端测试 +- UI测试 +- 功能测试 + +## 📈 数据可视化 +- 热力图 +- 折线图 +- 柱状图 +- 词云 + +## 📱 移动端功能 +- 手机优化界面 +- 移动端统计 +- 移动端词典浏览 + +## 🧠 智能学习 +- 智能错题分析 +- 自适应练习 +- 学习进度预测 + +## 🛠️ 开发者工具 +- TypeScript +- React +- Tauri +- Zustand +- Tailwind CSS + +## 📚 学习资源 +- 免费词库 +- 开源代码 +- 开发者文档 + +## 📦 打包方案 +- Web应用 +- 桌面应用 +- Docker容器 + +## 📊 统计功能 +- 提供学习统计 +- 支持数据导出 +- 练习历史记录 + +## 📱 移动端统计 +- 支持手机端统计 +- 移动端数据分析 +- 响应式可视化 + +## 🧭 导航系统 +- 清晰的词典导航 +- 支持搜索 +- 提供分类浏览 + +## 📚 词库分类 +- 英语考试 +- 编程语言 +- 专业英语 +- 基础教育 +- 外语学习 + +## 📈 统计分析 +- 练习数据追踪 +- 学习进度可视化 +- 错题分布分析 + +## 🧩 组件系统 +- 可复用的React组件 +- 自定义UI库 +- 可扩展架构 + +## 📁 文件结构 +``` +├── public/ # 静态资源 +├── src/ # 源代码 +│ ├── components/ # React组件 +│ ├── pages/ # 页面组件 +│ ├── hooks/ # React hooks +│ ├── store/ # 状态管理 +│ ├── resources/ # 资源定义 +│ ├── utils/ # 工具函数 +│ └── types/ # 类型定义 +├── src-tauri/ # Tauri桌面应用代码 +├── scripts/ # 脚本文件 +├── docs/ # 文档 +├── tests/ # 测试代码 +└── ... # 配置文件 +``` + +## 📦 技术架构 +- 前端:React + TypeScript + Tailwind CSS +- 状态管理:Zustand +- 统计:Mixpanel +- 构建工具:Vite + Tauri +- 测试:Playwright + Jest +- 持久化:IndexedDB + Dexie.js + +## 📱 移动端架构 +- 响应式设计 +- 移动端专用组件 +- 移动优化输入 + +## 📊 统计架构 +- 练习记录存储 +- 数据分析模块 +- 数据可视化组件 + +## 🧩 组件架构 +- UI组件库 +- 功能组件 +- 页面组件 + +## 📁 数据架构 +- 单词记录 +- 章节统计 +- 复习记录 +- 错题记录 + +## 📈 数据分析 +- 练习历史分析 +- 进步曲线 +- 错题分布 + +## 🧠 学习算法 +- 错题推荐 +- 自适应练习 +- 间隔重复 + +## 📱 移动端数据 +- 移动端练习记录 +- 手机端学习统计 +- 移动优化数据存储 + +## 🧩 组件设计 +- 可复用组件 +- 可配置组件 +- 组合式组件 + +## 📚 资源管理 +- 词库管理 +- 发音资源 +- 图标资源 + +## 📈 数据管理 +- 练习数据存储 +- 学习记录 +- 数据导出功能 + +## 📱 移动端组件 +- 专门的移动端组件 +- 响应式组件 +- 触控优化组件 + +## 🧠 智能推荐 +- 基于练习记录的推荐 +- 错题专项训练 +- 自适应学习路径 + +## 📊 统计组件 +- 折线图 +- 热力图 +- 柱状图 +- 词云 +- 数据表格 + +## 📚 词库功能 +- 词库浏览 +- 词库练习 +- 词库统计 +- 词库请求 + +## 📱 移动端交互 +- 手势支持 +- 移动端键盘 +- 触控优化 + +## 🧩 组件特性 +- 可定制样式 +- 支持暗色模式 +- 响应式设计 +- 可扩展功能 + +## 📈 统计功能 +- 练习数据展示 +- 进步曲线 +- 错题分析 +- 学习时长统计 + +## 🧠 学习追踪 +- 记录每次练习 +- 追踪学习进度 +- 提供个性化建议 + +## 📱 移动端统计 +- 支持移动端数据记录 +- 手机端练习统计 +- 移动端可视化 + +## 📦 桌面端 +- 支持Tauri打包 +- 提供桌面应用 +- 桌面端优化 + +## 🧪 测试方案 +- 端到端测试 +- 单元测试 +- UI测试 +- 功能测试 + +## 📊 数据可视化方案 +- 使用轻量级图表库 +- 自定义可视化样式 +- 支持数据导出 + +## 📚 词库统计 +- 词库大小 +- 词库难度 +- 词库进度 + +## 📱 移动端词库 +- 手机端词库浏览 +- 移动端词典搜索 +- 手机端练习 + +## 🧭 词典导航 +- 支持分类导航 +- 提供词库索引 +- 词典搜索功能 + +## 📊 练习统计 +- 毌词记录 +- 章节统计 +- 练习历史 +- 进步曲线 + +## 🧠 学习分析 +- 提供详细分析 +- 支持数据挖掘 +- 个性化学习建议 + +## 📱 移动端分析 +- 手机端数据可视化 +- 移动端学习分析 +- 响应式统计图表 + +## 📦 桌面端功能 +- 提供桌面应用 +- 支持本地存储 +- 桌面端优化 + +## 📁 数据结构设计 +- 单词记录 +- 章节记录 +- 复习记录 +- 错题记录 +- 学习统计 + +## 📈 统计数据设计 +- 时间维度 +- 错题分布 +- 练习频率 +- 进步趋势 + +## 🧪 测试数据 +- 测试用例 +- 测试数据 +- 测试覆盖率 + +## 📚 词库数据 +- 词汇数据 +- 发音数据 +- 词义数据 + +## 📱 移动端数据 +- 移动端词库 +- 手机端练习记录 +- 移动优化数据 + +## 🧠 学习数据 +- 错题数据 +- 练习历史 +- 学习进度 +- 记忆强度 + +## 📊 统计数据 +- 练习时长 +- 打字速度 +- 准确率 +- 进步曲线 + +## 📦 桌面数据 +- 本地持久化 +- 桌面端统计 +- 本地词库 + +## 📁 文件存储 +- IndexedDB +- 本地JSON +- 数据缓存 + +## 📱 移动端存储 +- 本地存储 +- 数据缓存 +- 练习记录 + +## 🧩 组件状态 +- 可交互状态 +- 可配置属性 +- 响应式设计 + +## 📊 数据状态 +- 加载状态 +- 练习状态 +- 统计状态 + +## 🧠 学习状态 +- 记忆状态 +- 掌握程度 +- 错题状态 + +## 📱 移动端状态 +- 手机端练习状态 +- 移动端加载状态 +- 触控状态 + +## 📦 桌面端状态 +- 本地存储状态 +- 桌面端练习状态 +- 桌面应用状态 + +## 🧪 测试状态 +- 单元测试 +- 端到端测试 +- 测试覆盖率 + +## 📈 统计状态 +- 数据加载 +- 练习进行中 +- 分析完成 + +## 🧭 导航状态 +- 词库浏览 +- 分类切换 +- 搜索状态 + +## 📚 词典状态 +- 词典加载 +- 章节切换 +- 练习状态 + +## 📱 移动端导航 +- 移动端词典导航 +- 手机端功能导航 +- 移动端统计导航 + +## 🧠 学习导航 +- 词汇导航 +- 统计导航 +- 设置导航 + +## 📊 统计导航 +- 进步导航 +- 错题导航 +- 练习导航 + +## 📦 桌面导航 +- 本地词库 +- 统计导航 +- 桌面端功能 + +## 📁 数据导航 +- 词库导航 +- 练习记录 +- 学习统计 + +## 📚 词库导航 +- 词库分类 +- 章节导航 +- 词汇索引 + +## 📱 移动端导航 +- 移动端词库 +- 手机功能导航 +- 移动统计 + +## 🧠 学习导航 +- 词汇导航 +- 练习导航 +- 统计导航 +- 复习导航 + +## 📊 统计导航 +- 数据导航 +- 可视化导航 +- 进度导航 + +## 📱 移动端统计 +- 手机端数据可视化 +- 移动端练习统计 +- 响应式图表 + +## 🧠 学习可视化 +- 学习进度条 +- 错题分布 +- 练习历史 + +## 📊 数据展示 +- 表格 +- 图表 +- 数据卡片 + +## 📱 移动端展示 +- 移动端表格 +- 手机数据卡片 +- 触控图表 + +## 🧩 组件展示 +- UI组件展示 +- 功能组件 +- 展示示例 + +## 📦 桌面展示 +- 桌面UI +- 本地功能 +- 桌面数据 + +## 🧠 学习展示 +- 练习数据 +- 进步展示 +- 错题展示 + +## 📱 移动端展示 +- 手机端练习 +- 移动数据 +- 响应式展示 + +## 📊 统计展示 +- 练习统计 +- 学习图表 +- 进度展示 + +## 📁 数据展示 +- 词库展示 +- 练习数据 +- 学习记录 + +## 🧪 测试展示 +- 测试结果 +- 测试覆盖率 +- 测试报告 + +## 📦 桌面端测试 +- 桌面功能测试 +- 本地存储测试 +- 桌面端统计 + +## 📱 移动端测试 +- 手机功能测试 +- 触控测试 +- 移动端统计 + +## 📚 词库测试 +- 词库加载 +- 词汇测试 +- 练习测试 + +## 📊 统计测试 +- 数据记录 +- 图表渲染 +- 分析准确性 + +## 🧠 学习测试 +- 练习流程 +- 错题记录 +- 学习统计 + +## 📁 数据测试 +- 数据持久化 +- 练习记录 +- 统计数据 + +## 📦 桌面端数据 +- 本地存储 +- 桌面端记录 +- 桌面应用统计 + +## 📱 移动端数据 +- 手机端存储 +- 移动练习 +- 数据缓存 + +## 📚 词库数据 +- 词汇数据 +- 词义数据 +- 发音数据 + +## 📊 统计数据 +- 练习数据 +- 学习历史 +- 错题数据 + +## 🧠 学习数据 +- 单词掌握 +- 练习记录 +- 学习进度 + +## 📱 移动端分析 +- 移动练习 +- 手机端统计 +- 响应式数据 + +## 📦 桌面数据分析 +- 本地数据分析 +- 桌面端统计 +- 本地词库分析 + +## 🧪 测试数据 +- 测试用例 +- 测试覆盖率 +- 测试报告 + +## 📊 统计分析 +- 练习分析 +- 学习统计 +- 数据挖掘 + +## 📱 移动端统计 +- 手机练习 +- 移动端分析 +- 触控统计 + +## 📦 桌面端统计 +- 本地统计 +- 桌面练习 +- 数据持久化 + +## 📚 词库分析 +- 词汇分析 +- 词频统计 +- 词库结构 + +## 🧠 学习分析 +- 练习分析 +- 错题分析 +- 学习曲线 + +## 📊 数据分析 +- 统计分析 +- 数据挖掘 +- 练习历史分析 + +## 📱 移动端分析 +- 手机端练习分析 +- 移动端数据 +- 触控分析 + +## 📦 桌面端分析 +- 桌面练习分析 +- 本地数据 +- 本地词库 + +## 🧪 测试分析 +- 测试覆盖率 +- 端到端测试 +- 功能测试 + +## 📈 统计分析 +- 练习统计 +- 学习进度 +- 错题统计 + +## 📚 词库分析 +- 词库大小 +- 词库难度 +- 词汇分布 + +## 📱 移动端词库 +- 手机端词库 +- 移动端词汇 +- 移动词库 + +## 📊 数据词库 +- 统计词库 +- 练习词库 +- 学习词库 + +## 🧠 学习词库 +- 练习词库 +- 错题词库 +- 复习词库 + +## 📱 移动端词汇 +- 移动练习 +- 手机词库 +- 词汇搜索 + +## 📦 桌面端词库 +- 本地词库 +- 桌面练习 +- 词汇统计 + +## 🧪 测试词库 +- 词库测试 +- 练习测试 +- 功能测试 + +## 📊 统计词库 +- 词库分析 +- 练习统计 +- 学习数据 + +## 📈 数据统计 +- 词库大小 +- 练习次数 +- 学习进度 + +## 🧠 学习统计 +- 错题统计 +- 练习统计 +- 复习统计 + +## 📱 移动端统计 +- 手机练习 +- 移动端数据 +- 触控统计 + +## 📦 桌面统计 +- 本地练习 +- 桌面分析 +- 统计图表 + +## 🧪 测试统计 +- 测试覆盖率 +- 端到端统计 +- 功能测试 + +## 📊 统计指标 +- 打字速度 +- 准确率 +- 练习时长 +- 复习次数 + +## 📱 移动端指标 +- 手机练习 +- 触控统计 +- 移动速度 + +## 🧠 学习指标 +- 词汇掌握 +- 练习次数 +- 进步趋势 + +## 📦 桌面端指标 +- 本地练习 +- 桌面统计 +- 数据持久化 + +## 🧪 测试指标 +- 单元测试 +- 端到端测试 +- 测试覆盖率 + +## 📊 统计维度 +- 时间维度 +- 错题分布 +- 练习频率 +- 进步曲线 + +## 📱 移动端维度 +- 手机练习 +- 移动端统计 +- 触控分析 + +## 🧠 学习维度 +- 词汇掌握 +- 练习强度 +- 学习习惯 + +## 📦 桌面端维度 +- 桌面练习 +- 本地统计 +- 学习分析 + +## 🧪 测试维度 +- 功能测试 +- 端到端测试 +- UI测试 + +## 📊 统计分析 +- 练习分析 +- 学习趋势 +- 数据挖掘 + +## 📱 移动端分析 +- 手机端练习 +- 移动端数据 +- 触控优化 + +## 🧠 学习分析 +- 词汇分析 +- 练习分析 +- 进步分析 + +## 📦 桌面端分析 +- 桌面练习 +- 本地数据分析 +- 桌面统计 + +## 🧪 测试分析 +- 测试覆盖率 +- 端到端分析 +- 功能测试 + +## 📊 统计报告 +- 生成统计 +- 数据可视化 +- 学习分析 + +## 📱 移动端报告 +- 手机端统计 +- 移动分析 +- 练习报告 + +## 🧠 学习报告 +- 学习进度 +- 错题报告 +- 练习总结 + +## 📦 桌面报告 +- 本地统计 +- 练习报告 +- 学习分析 + +## 🧪 测试报告 +- 测试覆盖率 +- 功能测试 +- 测试结果 + +## 📊 统计图表 +- 折线图 +- 柱状图 +- 热力图 +- 词云 + +## 📱 移动端图表 +- 响应式图表 +- 手机端可视化 +- 移动端热力图 + +## 🧠 学习图表 +- 学习曲线 +- 错题分布 +- 练习统计 + +## 📦 桌面图表 +- 桌面可视化 +- 本地数据图表 +- 统计图表 + +## 🧪 测试图表 +- 测试覆盖率图表 +- 端到端测试 +- 测试结果可视化 + +## 📊 统计展示 +- 练习统计 +- 学习进度 +- 错题展示 + +## 📱 移动端展示 +- 手机端统计 +- 移动可视化 +- 练习展示 + +## 🧠 学习展示 +- 词汇展示 +- 练习展示 +- 错题展示 + +## 📦 桌面展示 +- 桌面练习 +- 本地统计 +- 数据展示 + +## 🧪 测试展示 +- 测试覆盖率 +- 功能测试 +- 测试报告 + +## 📊 统计界面 +- 统计页面 +- 数据面板 +- 分析报告 + +## 📱 移动统计 +- 手机端分析 +- 移动数据 +- 练习统计 + +## 🧠 学习统计 +- 练习记录 +- 错题统计 +- 学习进度 + +## 📦 桌面统计 +- 本地练习 +- 桌面端分析 +- 数据统计 + +## 🧪 测试统计 +- 测试覆盖率 +- 端到端统计 +- 测试报告 + +## 📊 统计页面 +- 练习统计 +- 学习分析 +- 数据展示 + +## 📱 移动端页面 +- 手机端统计 +- 移动分析 +- 练习页面 + +## 🧠 学习页面 +- 词汇页面 +- 练习页面 +- 错题页面 + +## 📦 桌面端页面 +- 桌面统计 +- 本地分析 +- 数据页面 + +## 🧪 测试页面 +- 测试报告 +- 功能测试 +- 端到端测试 + +## 📊 统计组件 +- 统计面板 +- 数据卡片 +- 可视化组件 + +## 📱 移动端组件 +- 移动统计 +- 手机分析 +- 练习组件 + +## 🧠 学习组件 +- 词汇组件 +- 练习组件 +- 分析组件 + +## 📦 桌面端组件 +- 桌面统计 +- 本地分析 +- 数据组件 + +## 🧪 测试组件 +- 测试面板 +- 测试卡片 +- 测试组件 + +## 📊 统计模块 +- 统计功能 +- 数据分析 +- 可视化模块 + +## 📱 移动端模块 +- 移动统计 +- 手机分析 +- 练习模块 + +## 🧠 学习模块 +- 词汇模块 +- 练习模块 +- 分析模块 + +## 📦 桌面模块 +- 桌面统计 +- 本地分析 +- 数据模块 + +## 🧪 测试模块 +- 测试功能 +- 测试分析 +- 测试模块 + +## 📊 统计功能 +- 练习统计 +- 学习分析 +- 数据展示 + +## 📱 移动端功能 +- 手机端统计 +- 移动分析 +- 练习功能 + +## 🧠 学习功能 +- 词汇统计 +- 练习分析 +- 学习展示 + +## 📦 桌面功能 +- 桌面统计 +- 本地分析 +- 数据功能 + +## 🧪 测试功能 +- 测试统计 +- 功能测试 +- 测试分析 + +## 📊 统计系统 +- 练习统计 +- 学习分析 +- 数据系统 + +## 📱 移动端系统 +- 移动统计 +- 手机分析 +- 练习系统 + +## 🧠 学习系统 +- 词汇系统 +- 练习系统 +- 分析系统 + +## 📦 桌面系统 +- 桌面统计 +- 本地分析 +- 数据系统 + +## 🧪 测试系统 +- 测试功能 +- 测试分析 +- 端到端测试 + +## 📊 统计功能模块 +- 练习统计 +- 学习分析 +- 数据可视化 + +## 📱 移动端功能模块 +- 移动分析 +- 手机统计 +- 练习模块 + +## 🧠 学习功能模块 +- 词汇分析 +- 练习模块 +- 学习统计 + +## 📦 桌面功能模块 +- 桌面分析 +- 本地统计 +- 数据模块 + +## 🧪 测试功能模块 +- 测试分析 +- 功能模块 +- 测试模块 + +## 📊 统计模块 +- 练习分析 +- 学习统计 +- 数据模块 \ No newline at end of file -- Gitee