ernestohegi/yochimu

GitHub: ernestohegi/yochimu

Yochimu 是一个日语文本解析工具,通过提供语境化例句和翻译来辅助语言学习。

Stars: 17 | Forks: 2

# 🌙 Yochimu(よちむ)- 日语解析工具 🇯🇵 [![Next.js](https://img.shields.io/badge/Next.js-15.4-black?style=flat-square&logo=next.js)](https://nextjs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue?style=flat-square&logo=typescript)](https://www.typescriptlang.org/) [![TailwindCSS](https://img.shields.io/badge/TailwindCSS-4.x-38B2AC?style=flat-square&logo=tailwind-css)](https://tailwindcss.com/) [![开源项目](https://img.shields.io/badge/Open-Source-brightgreen?style=flat-square&logo=github)](https://github.com/ernestohegi/japanese-text-parser) ## 🚀 什么是 Yochimu? Yochimu 是一个强大的工具,专为希望**在语境中**而非孤立地学习词汇的日语学习者设计。与传统词汇表或抽认卡不同,Yochimu 允许您处理真实的日语句子,保留对正确语言习得至关重要的语境。 - 🔍 搜索任何日语单词或短语 - 📚 获取带翻译的真实例句 - 💾 保存您喜欢的句子用于学习 - 📤 导出为兼容 Anki 的格式,用于间隔重复练习 ## ✨ 功能特性 ### 🇯🇵 日语搜索 输入任何日语单词或短语,获取详细的翻译和例句。Yochimu 会将您的输入分词,并查找相关、自然的句子。 ### 🔖 收藏您的收藏 通过点击句子来收集有用的句子,在探索过程中构建您个性化的学习列表。 ## 🧠 为什么语境很重要 孤立地学习单词很难理解它们在实际日语中的用法。Yochimu 专注于提供完整的句子,以便您可以学习: - 🌟 自然的词语用法 - 🔄 常见搭配(经常一起出现的词语) - 📏 语法模式 - 🏮 文化语境 这种方法有助于更好地记忆和更自然的日语表达。 ## 🛠️ 技术构建 Yochimu 使用现代网络技术构建: - ⚛️ **React.js** - 用于构建用户界面 - 📱 **Next.js** - 用于服务器端渲染和 API 路由 - 🔒 **TypeScript** - 用于类型安全和更好的开发体验 - 🎨 **TailwindCSS** - 用于样式设计 - 🇯🇵 **Wanakana** - 用于日语文本处理 - 🔄 **React Query** - 用于高效的数据获取 - 💾 **File-Saver** - 用于下载 TSV 文件 ## 🔌 API 集成 Yochimu 集成了 [Tatoeba API](https://en.wiki.tatoeba.org/articles/show/api),以获取带有英语翻译的真实日语句子。Tatoeba 是一个包含多种语言翻译例句的大型数据库。 ## 🧪 使用 MSW 进行模拟 Yochimu 包含 [Mock Service Worker (MSW)](https://mswjs.io/),用于确定性的本地开发和测试就绪的请求模拟。 - 在开发中,浏览器 worker 会自动启动并可模拟: - `POST /api/translate` - `GET https://tatoeba.org/eng/api_v0/search` - 共享的处理程序位于 `src/mocks/handlers.ts`。 - 浏览器设置位于 `src/mocks/browser.ts`。 - 节点/测试设置位于 `src/mocks/server.ts`。 worker 脚本存储在 `public/mockServiceWorker.js`,并通过 `package.json` 中的 `msw.workerDirectory` 进行配置。 升级 MSW 后刷新 worker 文件: ``` pnpm dlx msw init public --save ``` ## 🚀 快速开始 ### 前置条件 - Node.js (v18 或更高版本) - npm, yarn, 或 pnpm ### 安装 1. 克隆仓库: git clone https://github.com/ernestohegi/japanese-text-parser.git cd japanese-text-parser 2. 安装依赖: npm install # 或者 yarn # 或者 pnpm install 3. 运行开发服务器: npm run dev # 或者 yarn dev # 或者 pnpm dev # 或者 bun dev 4. 使用浏览器打开 [http://localhost:3000](http://localhost:3000) 查看结果。 ## 📖 如何使用 ### 基础用法 1. **输入日语单词或短语** - 在首页的搜索框中,输入您想了解更多关于的任何日语单词、短语或句子。 - 例如:単語(单词),日本語(日语),勉強する(学习) 2. **查看结果** - Yochimu 将显示包含您搜索词的例句及其英语翻译。 3. **保存想要学习的句子** - 点击任何句子将其添加到您的学习列表。该句子将被高亮显示以表明已被选中。 4. **导出您的学习列表** - 收集一些句子后,单击“导出”按钮将列表下载为 TSV 文件。 ### 导入到 Anki 来自 Yochimu 的 TSV 文件格式便于导入 Anki: 1. 在计算机上打开 Anki 2. 创建一个新牌组或选择一个现有的 3. 单击“文件”→“导入”并选择您下载的 TSV 文件 4. 配置字段映射(第一个字段:日语,第二个字段:英语) 5. 使用 Anki 的间隔重复系统开始学习 ## 💡 有效学习的技巧 - 选择与您当前水平相当或略高于的句子 - 专注于自然、日常的表达,而非文学性或非常正式的日语 - 尝试理解每个句子中的语法模式 - 大声朗读句子以练习发音 - 与 Anki 一起建立持续的学习计划 ## 🤝 贡献 欢迎贡献!如果您想为 Yochimu 做出贡献: 1. Fork 仓库 2. 创建您的功能分支(`git checkout -b feature/amazing-feature`) 3. 提交您的更改(`git commit -m '添加一些惊人的功能'`) 4. 推送到分支(`git push origin feature/amazing-feature`) 5. 打开一个 Pull Request ## 🐛 问题与功能请求 如果您遇到任何问题或对新功能有想法,请在 GitHub 上 [创建一个问题](https://github.com/ernestohegi/japanese-text-parser/issues)。 ## 📄 许可证 本项目是开源的,并根据 MIT 许可证提供。 祝您日语学习愉快!🎌 がんばって!
标签:Anki集成, DNS解析, SRS, TailwindCSS, TypeScript, 例句提供, 单词提取, 句子上下文学习, 学习卡制作, 安全插件, 开源项目, 教育技术, 文本解析, 日语学习, 日语文本处理, 翻译工具, 自动化攻击, 词汇提取, 语言学习, 间隔重复系统