← ClaudeAtlas

quiz-builderlisted

把任意学习材料(讲义/笔记/教材/PDF/PPT/Markdown/网页/转写稿)做成一个单文件、 可离线打开、可反复刷的 HTML 互动习题库:5 种题型(单选/多选/判断/填空/闪卡)、 即时判分 + 解析、按单元/题型筛选、错题本快照、进度本地保存、中英双语一键切换。 当用户说"做习题库 / 刷题网页 / 把笔记做成练习题 / 互动题库 / 错题本 / 期末练习题 / generate a quiz / make a practice quiz / turn notes into flashcards"时触发。 区别于 cheatsheet-generator(把材料压成一张速查表)——本 skill 产出的是可作答、 可反复练的题库。
ninime09/quiz-builder · ★ 1 · Web & Frontend · score 77
Install: claude install-skill ninime09/quiz-builder
# Quiz Builder — 学习材料 → 单文件 HTML 互动习题库 把任意学习材料变成一个 **自包含、可离线打开、可反复刷** 的 HTML 习题库。最终产物 是 **一个 `.html` 文件**:双击即用、零依赖、进度存在浏览器本地、可发给同学或丢进 网盘。适用于备考、刷题、记忆类自学。 - 模板:`${CLAUDE_SKILL_DIR}/templates/quiz_template.html`(完整引擎,5 个占位符) - 可运行示例:`${CLAUDE_SKILL_DIR}/examples/demo.html`(5 种题型 + 中英双语,先打开它看成品) - 辅助脚本:`${CLAUDE_SKILL_DIR}/scripts/`(仅在处理 PPT 导出 PDF 时才需要,见 Phase 2) - 姊妹 skill:`cheatsheet-generator`(同样"材料 → 复习产物",但产出 LaTeX 速查表) 技能目录是 `${CLAUDE_SKILL_DIR}`。工作目录默认当前目录,除非 `$ARGUMENTS` 指定路径。 按顺序执行下面四个阶段。 --- ## Phase 1 — 收集材料 & 确认配置 1. **扫描材料**:用 Glob 找 `**/*.{pdf,pptx,md,txt,docx,ipynb,html}` 和图片 `**/*.{png,jpg,jpeg}`。也接受用户直接粘贴的文本 / 一个网址。 2. **用 AskUserQuestion 一次问清**(给出默认值,能推断的就别问): - **题库标题**(+ 是否要中英双语标题)。 - **怎么分组**(`groups`):按章节 / 周 / 主题,默认一章一组。 - **题量与配比**:每组多少题;"官方/原文题"(`type:"official"`,来自材料原文) vs "自拟练习题"(`type:"practice"`)的比例。默认:原文里的例题全收 + 每组补 4-6 道练习题。 - **题型**(`kind`,可混用):单选 `single` / 多选 `multi` / 判断 `tf` / 填空 `fill` / 闪卡 `flash`。默认以单选为主,按材料性质点缀其它题型 (概念记忆→闪卡,定义→填空,"对错辨析"→判断,多个正确项→多选)。 - **语言**:UI 与解析默认语言(`zh`/`en`)。模板本身支持运行时一键切换,且题目 文本字段可写成 `{zh, en}` 双语;先问清是否要双语出题(双语出题工作量更大)。 --- ## Phase 2 — 把材料读成"带出处的干净文本"(按类型分支,不要一刀切) 目标:拿到可靠的文本,并尽量保留出处(页码/章节)以便每题标 `source`。**按材料 类型选路径,绝大多数材料用不到去动画那一步:** - **Markdown / txt / 网页 / 用户粘贴文本** → 直接 Read,无需任何依赖。 - **DOCX / ipynb** → 直接 Read。 - **普通 PDF(教材、讲义、试卷)** → 优先用 Read 工具直接读 PDF;需要更精确的 逐页文本时再用 `pdftotext -layout file.pdf out.txt`(macOS 自带 / poppler)。 - **图片笔记 / 拍照讲义** → 用 Read 直接视觉读