# MindSpringErrorBook **Repository Path**: CanFlyhang/MindSpringErrorBook ## Basic Information - **Project Name**: MindSpringErrorBook - **Description**: MindSpring 错题启智是一款专为学生设计的错题管理 H5 应用,帮助学生高效整理错题、分析学习薄弱点,并通过 AI 技术提供个性化的学习建议。 - **Primary Language**: HTML - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-04 - **Last Updated**: 2026-02-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MindSpring 错题启智 - 学生错题管理 H5 应用 一个基于前后端分离架构的学生错题管理系统,支持错题上传、AI 识别、智能分析和个性化学习建议。 ## 📋 项目简介 MindSpring 错题启智是一款专为学生设计的错题管理 H5 应用,帮助学生高效整理错题、分析学习薄弱点,并通过 AI 技术提供个性化的学习建议。 ### 核心功能 - 🎯 **用户管理**:注册、登录、个人信息管理 - 📷 **错题上传**:支持拍照上传、手动录入 - 🤖 **AI 识别**:自动识别题目内容和知识点 - 📊 **智能分析**:学习薄弱点分析、进步趋势追踪 - 💬 **AI 对话**:针对错题的智能答疑和解析 - 📱 **响应式设计**:适配手机、平板等多种设备 ## 🛠 技术栈 ### 前端 - **HTML5 + CSS3**:响应式界面设计 - **原生 JavaScript**:交互逻辑实现 - **LocalStorage**:本地存储和 token 管理 - **Fetch API**:异步网络请求 - **PHP**:服务端渲染(传统模式) ### 后端 - **Node.js (v16+)**:运行环境 - **Express**:Web 框架 - **JWT**:用户认证 - **Multer**:文件上传处理 - **CORS**:跨域资源共享 ### 数据库 - **MySQL 8.0+**:数据存储 - **InnoDB**:存储引擎 - **utf8mb4**:字符集 ### 开发工具 - **Git**:版本控制 - **GitHub**:代码托管 - **VS Code**:代码编辑器 ## 📁 项目结构 ``` MindSpring错题启智/ ├── css/ # 样式文件 │ └── style.css # 主样式文件 ├── js/ # 前端脚本 │ ├── api.js # API 请求封装 │ ├── auth.js # 认证相关 │ └── utils.js # 工具函数 ├── page/ # 页面文件 │ ├── index.php # 首页 │ ├── login.php # 登录页 │ ├── register.php # 注册页 │ ├── upload.php # 错题上传页 │ ├── list.php # 错题列表页 │ └── analysis.php # 学习分析页 ├── api/ # 后端 API │ ├── config/ # 配置文件 │ │ ├── ai.js # AI 接口配置 │ │ └── database.sql # 数据库脚本 │ ├── controller/ # 控制器 │ ├── middleware/ # 中间件 │ ├── model/ # 数据模型 │ ├── router/ # 路由 │ ├── service/ # 业务逻辑 │ └── utils/ # 工具函数 ├── uploads/ # 上传文件存储 ├── app.js # 后端入口文件 ├── package.json # 项目依赖 ├── .gitignore # Git 忽略文件 └── README.md # 项目说明 ``` ## 🚀 快速开始 ### 前置要求 - Node.js 16.0+ - MySQL 8.0+ - Git ### 安装步骤 1. **克隆项目** ```bash git clone https://github.com/CanFlyhang/MindSpringErrorBook.git cd MindSpringErrorBook ``` 2. **安装依赖** ```bash npm install ``` 3. **配置数据库** - 创建数据库:`wrong_question_manage` - 导入数据库结构: ```bash mysql -u root -p wrong_question_manage < api/config/database.sql ``` 4. **配置 AI 接口**(可选) - 编辑 `api/config/ai.js` 文件,填入你的 AI 服务 API 密钥 5. **启动服务** ```bash # 开发模式 npm run dev # 生产模式 npm start ``` 6. **访问应用** - 前端:`http://localhost:3000` - API 文档:`http://localhost:3000/api/docs` ## 🔌 API 接口 ### 用户管理 - `POST /api/user/register` - 用户注册 - `POST /api/user/login` - 用户登录 - `GET /api/user/info` - 获取用户信息 ### 错题管理 - `POST /api/question/upload` - 上传错题 - `GET /api/question/list` - 获取错题列表 - `GET /api/question/detail` - 获取错题详情 - `PUT /api/question/update` - 更新错题 - `DELETE /api/question/delete` - 删除错题 ### AI 服务 - `POST /api/ai/recognize` - 题目识别 - `POST /api/ai/chat` - AI 对话 - `GET /api/ai/analysis` - 学习分析 ## 🗄 数据库设计 ### 核心表结构 #### `user` 表 - `id` (PK):用户 ID - `username`:用户名 - `password`:密码(MD5 加密) - `email`:邮箱 - `created_at`:创建时间 #### `wrong_question` 表 - `id` (PK):错题 ID - `user_id` (FK):用户 ID - `subject`:学科 - `content`:题目内容 - `answer`:正确答案 - `analysis`:题目解析 - `knowledge_point`:知识点 - `image_url`:图片路径 - `created_at`:创建时间 #### `chat_record` 表 - `id` (PK):对话 ID - `user_id` (FK):用户 ID - `question_id` (FK):错题 ID - `message`:消息内容 - `role`:角色(user/ai) - `created_at`:创建时间 #### `analysis_record` 表 - `id` (PK):分析 ID - `user_id` (FK):用户 ID - `weak_points`:薄弱点 - `suggestions`:学习建议 - `created_at`:创建时间 ## 📱 前端使用说明 ### 1. 用户注册/登录 - 首次使用需注册账号 - 登录后系统会自动保存 token(有效期 7 天) ### 2. 错题上传 - 支持拍照上传或手动录入 - 系统会自动识别题目内容(需配置 AI 接口) ### 3. 错题管理 - 查看错题列表,支持按学科、知识点筛选 - 点击错题查看详情和解析 - 可编辑或删除错题 ### 4. 学习分析 - 查看个人学习薄弱点 - 获取 AI 生成的个性化学习建议 - 追踪学习进步趋势 ## 🔧 开发指南 ### 代码规范 - 前端:使用 ES6+ 语法,遵循 JavaScript 标准规范 - 后端:使用 Node.js 推荐的代码风格,添加函数级注释 - 数据库:使用参数化查询,避免 SQL 注入 ### 测试账号 - 用户名:`testuser` - 密码:`123456` ### 常见问题 **Q: 上传图片失败怎么办?** A: 检查文件大小是否超过限制(默认 5MB),确保网络连接正常。 **Q: AI 识别不准确怎么办?** A: 尝试调整拍摄角度,确保题目清晰可见,或使用手动录入模式。 **Q: 如何备份数据?** A: 定期导出数据库,或使用 Git 版本控制管理代码。 ## 🤝 贡献指南 1. **Fork 项目** 2. **创建功能分支**:`git checkout -b feature/AmazingFeature` 3. **提交更改**:`git commit -m 'Add some AmazingFeature'` 4. **推送到分支**:`git push origin feature/AmazingFeature` 5. **打开 Pull Request** ## 📄 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## 📞 联系我们 - **项目地址**:[https://github.com/CanFlyhang/MindSpringErrorBook](https://github.com/CanFlyhang/MindSpringErrorBook) - **开发者**:CanFlyhang - **邮箱**:2153208034@qq.com --- **🌟 如果你觉得这个项目有用,请给它一个 Star!** *Made with ❤️ for students everywhere*