一个以“学习闭环”为核心的 AI 个性化学习笔记平台。
它不是单纯的 AI 笔记生成工具,也不是 Notion / Obsidian 式的通用知识库,而是围绕一个个“学习空间”组织用户的学习过程:从目标设定、资料摄入、深度理解、主动回忆,到弱点补强,让学习从“收集资料”走向“真正掌握”。
平台将每个学习目标抽象成一个独立的学习空间。每个空间都是一条完整学习闭环,包含该目标下的知识点、学习计划、笔记、概念、复述记录、测验、闪卡和弱点分析。
首页只负责一件事:管理和选择学习空间。进入某个学习空间后,用户再围绕该目标推进具体学习任务。
当前学习闭环拆成五个核心阶段:
- 目标设定:创建学习空间,明确要学什么、学到什么程度。
- 知识摄入:上传文件、粘贴文本、导入网页,或自己手写笔记。
- 深度理解:通过费曼复述和 AI 追问验证是否真正理解。
- 主动回忆:通过闪卡和测验触发检索练习。
- 弱点补强:根据错题、复述评分和掌握度数据定位薄弱概念。
本轮改造重点是把系统从“功能很多但分散”收拢成“以学习空间为入口的闭环产品”。
- 首页从通用 Dashboard 改为学习空间工作台。
- “最近笔记”改为“我的学习空间”。
- 每个学习空间卡片展示当前阶段、掌握度、概念数、笔记数、复述次数和下一步建议。
- 支持“进行中 / 已完成”筛选。
- 每个学习空间卡片提供操作菜单:
- 分享到学习闭环广场
- 移入回收站
- 首页保留“学习闭环广场”和“优先补强”两个辅助入口。
- 首页文案和视觉风格重新调整为更适合学习产品的深绿黑、柔和米白和金色强调色。
- 每个学习空间拥有独立页面。
- 页面围绕剩余四个闭环模块组织:
- 知识摄入
- 深度理解
- 主动回忆
- 弱点补强
- 页面聚合展示相关概念、学习记录、测验、复习闪卡、学习计划和相关笔记。
- 桌面端布局优化为接近一屏展示,减少上下滚动带来的割裂感。
- 原“笔记广场”调整为“学习闭环广场”。
- 用户可以从首页学习空间卡片菜单中将学习空间分享到广场。
- 分享时系统会把学习空间打包成公开闭环模板,包含:
- 学习目标
- 掌握层级
- 核心知识点
- 学习计划
- 相关参考笔记摘要
- 闭环使用方式
- 其他用户可以 Fork 广场中的学习闭环,系统会自动创建新的学习空间和核心笔记。
- 学习空间支持软删除。
- 首页提供回收站入口。
- 回收站现在同时支持:
- 学习空间恢复
- 学习空间永久删除
- 笔记恢复
- 笔记永久删除
- 笔记仍保留 7 天后自动清理逻辑。
- 费曼复述页面支持关联学习目标。
- 用户可先选择学习空间,再选择优先参考笔记。
- 系统根据相关笔记和知识库概念提供可复述概念。
- 评分时优先参考知识库上下文,而不是只对用户输入做孤立判断。
- 模型不可用时保留规则兜底评分,并提示用户模型恢复后可重新评估。
- “做笔记”入口包含:
- 自己写笔记
- 粘贴文本
- 上传文件
- 网页链接
- 自己写笔记页面引入模板能力。
- 笔记编辑体验向 Typora 式实时预览靠拢。
- 上传文件处理流程更偏用户体验:避免让用户误以为“上传完成”就等于“AI 分析完成”。
- 上传、测验生成、费曼评估等模型相关能力逐步改为更清晰的任务状态。
- 修复和排查了模型接口不可用时导致的 JSON 解析错误,例如返回 HTML 登录页却被当作 JSON 解析的情况。
- 测验生成、学习计划生成和批量上传处理都需要正确配置
.env.local中的大模型 Key。
- 学习目标与学习空间:创建目标、认知层级、知识点清单、学习计划和独立闭环空间。
- 文档处理与笔记:支持文本、PDF、图片、URL、批量上传和手写笔记。
- 结构化笔记:自动摘要、标签、关键知识点、思维导图、闪卡和测验入口。
- 知识图谱:从笔记中抽取概念关系,形成知识网络。
- 费曼复述评估:根据目标、概念和参考笔记评估用户复述质量。
- 苏格拉底式对话:通过追问帮助用户暴露理解漏洞。
- 智能闪卡:基于间隔重复进行复习调度。
- 测验生成与批改:根据笔记生成选择、填空、简答等题型,并记录薄弱点。
- 错题与弱点分析:将错误模式关联回概念、笔记和补强任务。
- 掌握度矩阵:综合测验、闪卡和费曼复述表现评估概念掌握度。
- 学习闭环广场:发布、浏览、Fork 他人的学习闭环模板。
- 回收站:管理被删除的笔记和学习空间。
/ 学习空间首页
/goals 新建和管理学习目标
/goals/[id] 单个学习空间详情页
/upload 做笔记:手写、粘贴、上传、网页链接
/upload/batch 批量上传资料
/notes 笔记库
/notes/[id] 笔记详情
/feynman 费曼复述评估
/review 今日闪卡复习
/quiz/[noteId] 基于笔记生成和完成测验
/quiz/history 测验记录
/concepts 概念总览
/concepts/[name] 概念详情
/knowledge-graph 知识图谱
/learning-path 学习路径生成
/explore 学习闭环广场
/share/[id] 公开学习闭环详情与 Fork
/trash 回收站
安装依赖:
pnpm install启动开发服务:
pnpm dev默认访问:
http://localhost:5000
如果端口被占用,可以先停止已有服务:
pnpm run dev:stop需要自动清理旧进程或切换 Webpack 时,可以使用辅助脚本:
pnpm run dev:all创建 .env.local,至少配置 Supabase 和一个可用的大模型 Key。
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=your-anon-key
SUPABASE_SERVICE_KEY=your-service-key
OPENAI_API_KEY=sk-your-key-here项目也保留了 DeepSeek、通义千问、Kimi、智谱、豆包、SiliconFlow 等模型适配能力。具体使用哪个模型,取决于 .env.local 和 src/lib/llm-provider.ts 中的配置。
注意:不要把 .env.local 提交到 GitHub。
pnpm dev # 启动 Next.js 开发服务,默认端口 5000
pnpm run dev:stop # 停止本地开发服务
pnpm run dev:all # 使用辅助脚本启动开发服务
pnpm run ts-check # TypeScript 类型检查
pnpm run build # 生产构建- Next.js 16 App Router
- React 19
- TypeScript
- Tailwind CSS 4
- shadcn/ui
- Supabase PostgreSQL
- Drizzle ORM
- LangChain / LangGraph
- 多模型 LLM Provider
当前项目已经支持以下核心接口:
/api/dashboard:首页学习空间与学习状态聚合。/api/learning-goals:学习目标列表与创建。/api/learning-goals/[id]:学习空间更新、软删除。/api/learning-goals/[id]/publish:将学习空间发布到学习闭环广场。/api/trash:回收站列表,包含笔记和学习空间。/api/trash/[id]/restore:恢复回收站内容。/api/public-notes:学习闭环广场列表。/api/public-notes/[id]/fork:Fork 公开学习闭环。/api/feynman/evaluate:费曼复述评估。/api/notes/[id]/quiz/generate:基于笔记生成测验。/api/upload/batch:批量导入资料。
为了尽快让“分享学习空间到广场”可用,目前广场仍复用公开笔记表 notes.is_public。发布学习空间时,系统会把空间打包为一条公开闭环模板笔记。
后续更理想的数据库设计是增加一等公民的公开学习空间表,例如:
learning_goals.is_publiclearning_goals.fork_countlearning_goals.source_goal_idnotes.goal_id或note_learning_goals
这样可以让学习空间、笔记和广场模板之间形成更明确的关系。
平台面向需要把学习资料转化为掌握结果的学生和自学者。核心价值不是单次生成笔记,而是把目标、资料、笔记、复述、测验、闪卡和弱点补强连接成持续学习流程。
适合的使用方式:
- 先创建一个明确的学习目标,沉淀为独立学习空间。
- 导入课程材料、文章、PDF、图片或网页,让 AI 生成结构化学习笔记。
- 用费曼复述、测验和闪卡验证理解,而不是只停留在阅读。
- 根据错题、复述评分和掌握度数据,持续补强薄弱概念。
产品差异化:
- 以学习空间组织资料,避免笔记散落在不同入口。
- 把 AI 输出作为学习起点,后续通过验证与反馈推动掌握。
- 支持公开学习闭环模板,用户可以分享或 Fork 可复用的学习路径。