# 多题型刷题系统 **Repository Path**: jide-shan/multi-question-brushing-system ## Basic Information - **Project Name**: 多题型刷题系统 - **Description**: 这是一个基于 Vue 3 + TypeScript 的多题型刷题系统,支持题库导入(Excel/Word/TXT)、多题型答题渲染(单选/多选/判断/填空/简答等)、答题卡跳转、错题本/收藏/笔记自动记录,并可将题库或刷题记录导出为 Excel/Word;数据默认本地 IndexedDB 持久化。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-21 - **Last Updated**: 2025-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 多题型刷题系统(Vue 3 + TS + Vite) 面向学生/教师/个人练习的多题型刷题应用,支持导入/自定义题库、10 类题型渲染、答题卡、错题本、收藏、笔记、导出记录等。 ## 功能概览 - 题型覆盖:单选、多选/不定项、判断、填空/无序填空、简答、匹配、材料题、改错题。 - 导入:Excel(推荐)、Word、PDF、TXT,自动解析题型/答案/解析/难度/标签;带解析警告提示。 - 刷题交互:题干 + 选项/输入区域;上一题/下一题;答题卡跳转;收藏、笔记;客观题自动判分、主观题标记待复核。 - 数据:IndexedDB 本地持久化 + 简易 AES-GCM 加密(内置默认密钥,可扩展);错题本、收藏、历史记录。 - 导出:题库导出 Excel,刷题记录导出 Excel/Word;一键下载 Excel 模板。 ## 运行与构建 - 环境:Node.js ≥ 20.19(Vite 7 的最低要求),npm 10+。 - 安装依赖: ```bash cd apps/quizzer npm install ``` - 本地开发: ```bash npm run dev ``` - 类型检查: ```bash npx vue-tsc -b ``` - 构建(需 Node 20.19+;当前环境 Node 20.15.1 仅能通过类型检查): ```bash npm run build ``` ## 导入模板与格式规范 - **Excel 表头**:`题干 | 选项A | 选项B | 选项C | 选项D | 答案 | 解析 | 题型 | 难度 | 标签` - 题型示例:单选/多选/判断/填空/简答/匹配/材料/不定项/改错/无序填空 - 难度:简单/中等/困难(或 easy/medium/hard) - **Word(docx)**:`[题型:单选][难度:中] 题干...` 换行列出 `A. ...`、`B. ...`,答案行 `答案: A`,解析行 `解析: ...` - **PDF**:建议先 OCR 转文本;应用会尝试按“空行分块 + 选项/答案”解析,未识别到答案时给出警告。 - **TXT**:空行分隔题目,支持行内标签 `题型/答案/解析`。 ## 目录结构(关键) - `src/store/quizStore.ts`:题库/作答状态、错题本、收藏、笔记、历史。 - `src/utils/parser.ts`:Excel/Word/PDF/TXT 解析。 - `src/utils/exporters.ts`:题库与刷题记录导出(Excel/Word)。 - `src/utils/storage.ts`:IndexedDB + AES-GCM 简易加密封装。 - `src/components/QuestionCard.vue`:多题型渲染与作答组件。 - `src/components/ImportModal.vue`:导入弹窗(格式选择、警告提示)。 - `src/components/AnswerSheet.vue`:答题卡。 - `src/components/BottomBar.vue`:底部操作栏(上一题/答题卡/收藏/笔记/下一题)。 - `src/App.vue`:页面布局、统计、错题本/收藏侧栏、导入导出入口。 ## 使用提示 - 默认内置一组示例题库,可通过「导入题库」上传 Excel/Word/PDF/TXT。 - 导入流程:选择文件 → 选择格式(可选自动) → 解析预览 → 确认导入(出现警告时请手动修正对应题目)。 - 底部栏包含必备操作:上一题、答题卡、收藏、笔记、下一题。 - 「导出记录」会导出已作答题目的正确/错误状态、作答时间与解析;「导出题库」会导出当前题库。 ## 待扩展 - OCR 管道(对扫描版 PDF 自动文字化)可接入 PaddleOCR/Tesseract.js。 - AI 辅助组题/推荐:基于错题本知识点生成相似题目,需人工审核。 - 多人协作:在后端增加用户/角色/题库共享权限(当前为纯前端本地版)。