#项目复盘#学习工具#JLPT#Next.js

把日语语法变成每天能复习的词卡:JLPT Grammar Deck 界面设计小记

2026年5月1日 10 分钟阅读

JLPT Grammar Deck 的最新版重新设计了首页与学习流程:955 条 N1–N5 语法、Guest 本地进度、SM-2 复习、自动挖空练习和完整学习数据现已全部免费开放。

最初做 JLPT Grammar Deck 时,我想解决的是一个很具体的问题:日语语法资料并不少,但真正开始备考后,最难的往往不是“去哪里查”,而是“今天该学什么、什么时候再复习、哪些内容仍然记不牢”。

最近我重新设计了整个项目的界面和产品结构。新版不再像一个单纯的语法卡片演示,而更像一张可以每天打开的学习桌:955 条 N1–N5 语法、Anki 风格卡片、SM-2 间隔复习、例句挖空练习、个人语法库和学习分析,都被放进同一条学习路径里。

在线体验:jlpt-grammar-cards.com

JLPT Grammar Deck 新版首页:学习桌式布局、示例卡片与清晰的学习入口。

从“功能首页”改成真正的学习入口

这次界面升级最明显的变化,是首页不再堆叠功能卡片,而是先告诉用户这个工具解决什么问题。

新版首页用一张可以翻面的语法卡作为视觉中心,并把“开始学习”和“查看语法库”放在最直接的位置。往下浏览时,可以看到 955 条语法、SM-2 复习、易混语法、学习数据、Guest 模式与个人语法库等核心能力,以及一条完整的五步学习流程。

视觉上,我改用了更像纸张、笔记和学习手册的暖白色背景,配合衬线标题、等宽小标签、细边框和少量柔和色块。它没有把自己包装成复杂的后台系统,而是把重点留给日语内容本身。

955 条语法不只是“放在数据库里”

新版语法库:可搜索 955 条内容,并按等级、场景、学习状态和收藏筛选。

当前语法库覆盖 N5 到 N1,共 955 条:N5 129 条、N4 135 条、N3 206 条、N2 233 条、N1 252 条。

每条语法可以包含意思、接续、例句、翻译、易错点、记忆提示和相近语法。用户既可以按关键词搜索,也可以按 JLPT 等级、语法场景、学习状态与收藏进行组合筛选。

这个区别很重要。资料库的价值不只是“内容很多”,而是能把相似表达放在一起比较,并让用户知道某一条内容是未学习、学习中,还是已经掌握。语法详情页也已经改为服务端渲染,并加入 sitemap 与 robots 支持,让具体语法可以更稳定地被打开、分享和检索。

全部功能免费,Guest 模式依然可以直接开始

新版已经移除了原来的 Pro 付费边界。语法库、学习数据与复习分析、个人语法库和填空练习现在都对所有用户开放,没有付费墙,也没有使用次数限制。

不登录也可以开始学习。Guest 模式会把学习进度、收藏、SM-2 状态和复习历史保存在当前浏览器;需要跨设备使用或长期同步时,再登录账号把本地进度合并到 Supabase。

这一点是我很想保留的产品原则:先让用户真实地完成一次学习,再决定是否注册,而不是在体验功能之前先要求账号。

原来的 Pro 页面也重新设计成了“功能与更新计划”。这里会区分已经开放的能力和未来方向,例如错题本、批量导入导出、移动端优化与更多内容校对。项目接受自愿支持,但是否支持不会影响任何功能。

卡片只留下当前应该记住的内容

新版学习页:先看语法正面主动回忆,再显示答案并进入 SM-2 评分。

学习页仍然使用 Anki 风格,但新版把注意力进一步收回到当前卡片。正面只展示语法、等级和必要提示,先让用户主动回忆;点击“显示答案”后,才会出现意思、接续、例句和易错点。

最近一次调整还专门隔离了卡片的隐藏面,避免答案内容在尚未翻卡时影响回忆。页面顶部则显示可学习数量、当前位置、剩余卡片、当前等级和重新开始入口,并把“练习”放成随时可见的快捷操作。

翻面后,用户通过 Again、Hard、Good、Easy 四档评分记录记忆情况,SM-2 会据此更新掌握度、复习间隔和下一次到期时间。评分后立即进入下一张;返回上一张时保持只读,快速连点也有提交锁,避免一次复习被重复记录。

学完可以立刻去练,而不是退出流程

新版练习页:可从今日练过、学过的语法或全部 955 条语法中生成挖空题。

练习页会直接利用语法库中的例句生成 cloze 选择题,不需要额外维护一套固定题库。当前支持三种出题范围:

  • 今天练过的语法
  • 已经学过的语法
  • 全部语法,并可继续选择 JLPT 等级

用户作答后会看到正确答案、得分、进度和解释。新版还把练习入口放到学习页与今日复习页顶部,让“看卡片”和“放进句子里判断”之间不再隔着多层导航。

这也是新界面最实用的变化之一:它不是只改变颜色和排版,而是在关键页面直接暴露下一步动作,让一次学习自然地继续下去。

学习数据不再分基础版和高级版

新版学习数据页:今日任务、等级进度、掌握率和长期复习分析集中在同一页。

学习数据页现在会集中展示:

  • 今日新学、今日复习、完成率和连续天数
  • 已学习、已掌握和收藏数量
  • N5–N1 各等级进度与总体掌握率
  • 近七天学习趋势和四档评分分布
  • 最近复习记录
  • 按复习间隔计算的记忆保持率
  • 反复出现 Again 或 Hard 的薄弱语法

这些原本分层展示的分析现在全部免费开放。数据页要回答的不是“今天点了多少次按钮”,而是“哪些内容应该优先重学,以及间隔拉长后是否还记得”。

个人语法也进入同一套学习系统

用户可以收藏重点语法、隐藏暂时不需要的默认内容,也可以添加不限数量的私有语法条目。个人内容不是孤立的笔记,它同样可以进入学习、复习与统计流程。

登录用户的数据由 Supabase PostgreSQL、Auth 和 RLS 管理;Guest 进度则保存在 localStorage,并在登录后进行合并。这样既降低了首次使用门槛,也为长期学习保留了账号同步能力。

最新版本背后的技术调整

当前项目使用:

  • Next.js 16(App Router)+ React 19 + TypeScript
  • Tailwind CSS 4 与自定义界面组件
  • Supabase PostgreSQL + Auth + Row Level Security
  • localStorage Guest 进度与登录后云端合并
  • SM-2 调度、复习历史与记忆保持率分析
  • 例句驱动的 cloze 题目生成
  • Vitest 数据、算法和服务层测试
  • Vercel 部署

这轮升级也不只发生在视觉层。语法详情页采用服务端渲染与运行时 ISR,站点加入 sitemap 和 robots,语法卡组改为按需加载,同时持续进行数据审计、去重和旧 ID 重定向。对一款内容型学习工具来说,页面能否稳定打开、内容能否准确对应,与界面是否好看同样重要。

一张每天愿意重新打开的学习桌

现在的 JLPT Grammar Deck 形成了一条更清楚的循环:在语法库找到内容,用卡片主动回忆,通过四档评分进入 SM-2 队列,再用挖空题检验理解,最后回到数据页决定下一轮重点。

界面重新设计之后,我更希望它给人的感觉不是“这里有 955 条资料”,而是“我现在知道下一步该做什么”。对学习工具来说,这种明确感比功能数量本身更有价值。

文中界面与功能基于 2026 年 8 月的项目版本。文章发布日期保持为 2026 年 5 月 1 日;截图使用未登录的 Guest 模式。

喜欢这篇文章?

如果对你有所帮助,欢迎支持我继续创作

评论