the work

张子琛 · AI 工程师 · 珀斯

个人项目

PTE 学习工具

用打字练 PTE:账号系统加 FSRS 间隔复习,练单词、固定搭配和听写。已上线。

为什么做

备考 PTE 时,错题记在 Notion 里,但光看不会记住。PTE 的填空和听写最后都要靠手打出来,所以练习也应该是打字。

做了什么

在开源打字练习工具 qwerty-learner 的基础上,改成了一个有账号的 PTE 练习站:

  • 三种练习:单词、FIB 固定搭配填空、WFD 整句听写。听写按 PTE 的规则判分,忽略大小写和标点。
  • 间隔复习:用 FSRS 算法排复习。第一遍打错的题第二天一定会再出现;单词复习是每天必须完成的。
  • 自己的题库:FIB 和 WFD 按导入日期分章,每天从 Notion 的错题总结导进来。
  • 导入接口:管理员可以生成 API key,用脚本批量导入。

技术

前端是 React + Vite + Jotai,后端是一个 Hono 应用,本地单独跑,在 Vercel 上作为函数运行。数据在 Neon 的 Postgres 里,用 Drizzle 管理迁移,每次部署自动迁移。登录用 better-auth,关闭了公开注册。

原项目把数据存在浏览器的 IndexedDB 里,我把它整个删掉,所有记录都走接口进数据库,这样换设备也能接着练。

← 全部作品