Show HN:开源的早期阅读器,提供自然拼读辅助

Hacker News Top 产品

摘要

Show HN:Yara Reads 是一个开源的儿童早期阅读应用,专为刚学完自然拼读 phonics 的孩子设计,每个单词都可逐音素拆解朗读,并内置按发音校验词汇的检查器。项目基于 Cloudflare Worker 构建,支持通过 MCP 接入 Claude/ChatGPT 等代理自动生成符合孩子音素水平的故事。

我女儿今年6岁,正在学习识字。她已经通过 Teach Your Monster to Read 学完了基础的自然拼读,但总抱怨内容太重复了。我想给她一些故事来读,但她仍需要有人帮她把单词拼读出来——而且我希望她能体验自己坐下来独立阅读的感觉。<p>所以我做了这个阅读器应用,让她可以点击单词、逐音素拆解发音,独立完成阅读。<p>我12岁的儿子写了第一个故事,结尾留了个悬念,他正在写下一节。<p>我们近期会发布更多章节和故事。<p>还有一件事——<p>这个阅读器支持 MCP 连接,你可以接入 Claude、ChatGPT 或 Grok,把喜欢的书的 PDF(甚至用手机相机快速拍的一组扫描件)交给它们,让它们把你的藏书导入应用中(仅限你的账号私有、给你自己的孩子使用,前提是你确实拥有这本书)。<p>阅读器可以在其网站上免费使用,也是开源的,如果你想折腾并创建自己的版本,欢迎自行修改。<p>内置故事采用 Creative Commons 协议发布。
查看原文
查看缓存全文

缓存时间: 2026/10/19 20:07

finereli/yarareads 来源:https://github.com/finereli/yarareads

Yara Reads

立即体验:yarareads.finereli.com (https://yarareads.finereli.com) — 免费,无需注册。

一款专为刚学会自然拼读的孩子设计的阅读应用,让他们有真正适合自己的内容可以阅读。故事中的每个单词都能用他们已经掌握的音素拼读出来。当孩子遇到困难时,点击单词即可弹出对应的音素按钮,直接在旁边显示。

这是为我女儿 Yara 做的。她六岁,喜欢闪亮的东西、魔法和龙。她已经完成了 Teach Your Monster to Read,但我找不到适合她继续阅读的内容——既要是一个好故事,又要只包含她能拼读的单词。她的哥哥 Tom 写了第一个故事,而这个应用的设计理念是可以持续增加更多故事。

有什么不同

  • 帮助直接在单词上。 点击任意单词:单个字母下方显示圆点,字母组合(如 “sh” 和 “ee”)下方显示横条,分割元音(如 a_e)用弧线连接。一个朗读按钮会依次点亮每个音素,然后读出整个单词。它从不整页朗读给孩子听。
  • 校验器是核心。 故事会逐词对照孩子已知的音素进行校验,依据的是发音而非仅仅拼写(如果孩子没学过分割元音 a,“cake” 就会校验失败)。运行 npm run check,如果故事中包含孩子无法拼读的单词,校验就会失败。
  • 自带书籍。 连接你自己的 AI 代理(Claude、ChatGPT,任何支持 MCP 的工具),它可以在孩子已学音素范围内创作故事,也可以录入你已有的书籍。它会自动校验单词、添加插图,并展示结果。只有你的账号能看到这些内容。
  • 你来设定孩子学了什么。 可以自由开关各个音素和难词。包含未学音素的单词会显示虚线下划线,新音素以紫色显示。

自行部署

这是一个 Cloudflare Worker 应用,使用静态资源、D1 数据库存储数据、R2 存储图片。无需构建步骤。如果你是一位有正在学习阅读的孩子的技术爸爸(或妈妈),欢迎拿去改造成你自己的版本。

git clone https://github.com/finereli/yarareads && cd yarareads
npm install
npx wrangler d1 create yara-reads # 将 database_id 填入 wrangler.jsonc,同时填入你的 account_id
npx wrangler r2 bucket create yara-reads-pictures
npx wrangler d1 migrations apply yara-reads --local
node tools/lexicon-asset.mjs # Worker 使用的单词词典
node tools/push.mjs --local --inventory --images --owner dev # 加载故事(--owner:如果家里有自制书籍也一并加载)
npx wrangler dev

满意后运行 npm run deploy(在 wrangler.jsonc 中修改 routes 以匹配你的域名;部署需要先生成词典,脚本会自动完成这一步)。

需要了解的事项:

  • 无需登录即可使用。 这就是完整的应用体验,声音和学习进度保存在浏览器中。账号系统(以及 AI 代理)使用 login.finereli.com,该服务仅服务于我自己的应用。如果想自行运行账号功能,替换为你自己的登录方式即可:只有 public/login.js 和 src/verify-login.js 两个文件与登录系统相关。
  • 音素发音是我的录音,为每个磁贴单独录制,不包含在本仓库中。没有录音时,磁贴仍然会亮起但不会发声。你可以用 tools/sounds-record.mjs 录制自己的音素(见文件顶部注释)。单词朗读由 Cloudflare Workers AI 完成,因此部署需要启用该功能的账号。
  • 创作故事:复制 content/stories/toby-1.json,编辑页面内容,运行 npm run check。它会告诉你哪些单词你的孩子还无法拼读。千万不要为了通过校验而放宽音素限制——请重写故事。docs/vocabulary.md 提供了下一步教学词汇的队列。
  • 插图:docs/illustration.md 和 tools/illustrate.mjs 说明了插图的制作方式。
  • CLAUDE.md 说明了各部分如何协同工作,供你或你的 AI 代理参考。
  • 使用数据:node tools/stats.mjs

许可证

代码:MIT 协议(LICENSE)。故事和插图:知识共享署名 4.0 国际协议(content/LICENSE.md),可以自由改编,但请注明 Yara Reads 及原作者。第三方素材:NOTICE.md。

隐私政策 · 服务条款

相似文章

KIRA:面向儿童的双通路分析全栈阅读筛查系统

arXiv cs.CL

KIRA 是一个面向儿童早期阅读筛查的全栈系统,结合词级流利度评分与音素级错误检测的双通路分析,将儿童语音识别的词错误率从 13.88% 降至 8.84%、音素错误率从 41.66% 降至 23.00%,并配套教师端 Web 界面以支持课堂部署与针对性干预。

@Jolyne_AI: 有位开发者学《新概念英语》想练听力和跟读,却总卡在这些琐事上:音频要另找,想跳到某一句得来回拖进度条,节奏被打断,效率直线下降。 他索性做了个开源工具:NCE Flow,把《新概念英语》四册做成在线点读学习系统,一次性解决“找音频、对句子…

X AI KOLs Timeline

NCE Flow 是一个开源工具,将《新概念英语》四册内容做成在线点读学习系统,支持句子级点读、多语言视图、倍速连读、进度追踪等功能,可 Docker 自部署或直接在线使用。

Glyphi:快速阅读器

Product Hunt

Glyphi 是一款 RSVP 快速阅读器,通过一次显示一个词来让您快速阅读书籍、PDF、文章和网页。

@yadong_xie: 介绍下自用的英文网站阅读插件 自动在英文网站上标注超出英文水平的单词 趁 claude api 单独收费前,跑完了 2 个 claude 20x max,处理了 16w 单词表,不需要注册,免费使用 https://readto.ai

X AI KOLs Following

介绍了一款名为 readto 的 Chrome 扩展,可根据用户英语水平自动在英文网页的生词上方标注中文释义,无需划词或中断阅读。该插件利用 Claude API 处理了16万单词表,免费使用。