起点:一个"忍无可忍"的用户
我用过市面上几乎所有主流背单词 App。
多邻国?游戏化做得很好,但每天10分钟根本不够用。扇贝?词库够大,但界面越来越重,广告越来越多。百词斩?图片联想不适合我,总感觉在记图而不是记词。
直到有一天我意识到:我不是找不到好 App,我是找不到适合我自己的 App。
那一刻我做了一个决定——自己做一个。
但我不会写代码。
一个"不会写代码"的人,如何做完一个产品
说"不会写代码"其实不准确。我能看懂代码,偶尔也能改改简单的逻辑,但独立实现一个完整的前端项目?不现实。
然后我遇到了 Claude Code。
整个 HiWord.AI 的开发过程,我没有写过一行代码。全部通过自然语言与 Claude Code 对话完成。
更夸张的是——很多需求和调试,是我在上下班的地铁和公交上,用手机打字完成的。我描述问题,Claude Code 给出实现,回到家打开电脑复制粘贴,测试通过,继续下一个功能。
这听起来很神奇,但过程并不总是顺利。
产品介绍:HiWord.AI 做了什么
HiWord.AI 是一款完全免费、无广告、无需注册即可使用的英语词汇学习 PWA(渐进式 Web 应用)。
核心学习流程
第一步:翻卡学词
基于经典 SM-2 间隔重复算法,系统会在你"即将忘记"的最佳时机推送复习。每个单词有独立的熟悉度分数(0-100分),精确追踪掌握程度,不会让你反复背已经会的词。
第二步:AI 生成沉浸式阅读
这是我最得意的功能。
每次学完一组单词后,AI 会自动将这些词汇融入一篇真实的英文短文——不是生硬的例句拼接,而是有情节、有逻辑、像真实文章一样的故事。你在阅读中遇到刚学的词,点击即可查看释义和音标。
研究表明,在语境中学词的记忆留存率比孤立背诵高出 2-3 倍。这个功能就是这个原理的直接实践。
第三步:游戏化巩固
做了两个小游戏专门用于巩固记忆。游戏会定向优先选取最近学过的词汇,在轻松的游戏氛围中反复接触新词,让记忆在不知不觉中加深。
词库:全部用 Claude Code 清洗整理
- 🌱 KET 词汇(586词)— 剑桥 A2 入门级
- 📚 PET 词汇(1790词)— 剑桥 B1 中级
- 💬 日常口语(1420词)— 实用会话短语
- 🎓 雅思词汇(2180词)— B2-C1 学术词汇
- 🔥 加密金融(1072词)— Web3 区块链术语
这五个词库的原始数据来自公开资源,但质量参差不齐——有拼写错误、释义不一致、词性标注缺失等问题。我把所有词库数据喂给 Claude Code,让它逐一清洗、标注、格式化,最终输出统一结构的 JSON 文件。 这个过程如果手工完成,可能要几周;用 Claude Code,几天内搞定。
技术架构:纯前端 PWA,零后端成本
核心原则:能不用后端就不用。
技术栈
- 前端框架:原生 Vue 3(无构建工具,CDN 引入)
- 状态管理:localStorage + IndexedDB
- 云同步:Firebase Firestore(仅登录用户)
- AI 阅读:OpenAI API(服务端代理)
- 部署:Cloudflare Pages(全球 CDN,免费额度够用)
- PWA:Service Worker + Web App Manifest
整个项目没有 package.json,没有 node_modules,没有构建步骤。直接写 .html 文件,推到 GitHub, 自动部署到vercel。
开发过程:没有一帆风顺
第一关:Service Worker 的缓存地狱
PWA 离线功能依赖 Service Worker,但 SW 的缓存策略是整个项目最难的部分。
第一版上线后,我更新了词库数据,但用户(包括我自己)打开 App 还是旧数据。SW 把所有资源都缓存死了。
我在地铁上把报错截图发给 Claude Code,描述现象,它给我分析了三种 cache-busting 方案,最终我们用版本号哈希解决了这个问题。那天来回通勤两小时,bug 修完了。
第二关:SM-2 算法的"玄学"行为
算法实现完成后,我发现有些单词会突然"跳级"——明明刚学的词,系统排到30天后复习。
我完全不知道哪里出了问题。把代码片段发给 Claude Code,它发现是浮点数计算精度问题导致 easeFactor 异常累加。一个 Math.max(1.3, ...) 的边界保护就修好了。
第三关:AI 阅读功能的 Prompt 调优
最初版本的 AI 生成阅读质量很差——像是把单词强行塞进句子,读起来非常生硬。
我前后迭代了十几版 Prompt,每次把生成结果发给 Claude Code 评估,它帮我分析哪里不自然、如何引导 GPT 生成更有故事性的内容。最终定稿的 Prompt 明确要求:有人物、有场景、有冲突,单词自然融入情节,不能像例句本。
意外的好主意
有一次我随口描述功能:"我想让已经会的词跳过初级阶段,不用从头背"。
Claude Code 建议加一个「早就认识」按钮,直接把该词标记为熟悉,跳过 SM-2 的前几个低间隔阶段。我没想到这个细节,但它提了,而且解释了为什么这对有基础的用户很重要。
现在这个按钮是我个人最常用的功能。
写在最后
整个项目从想法到上线,大约花了两周到现在的状态,但基本上第一天就是一个可以用的产品,不断使用不断优化。
期间没有写过一行代码,也没有读过一行代码。有问题就描述给 Claude Code,它来解决。
这让我重新思考"独立开发"的边界——技术能力不再是门槛,真正稀缺的是你知道自己想要什么。
如果你也有一个想做的产品但不知道从哪里开始,不妨试试用自然语言告诉 Claude Code 你想要什么。
👉 立即体验:hiword.ai