# 学生课程辅助系统 **Repository Path**: dm_team/Student-Course-Assistance-System ## Basic Information - **Project Name**: 学生课程辅助系统 - **Description**: 学生课程辅助系统 / Student Course Assistance System - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-09 - **Last Updated**: 2026-09-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 学生课程辅助系统 / Student Course Assistance System 面向本科教学场景的课程学习辅助平台,覆盖课程排程、作业推进、学习笔记沉淀、题库资源管理、课堂练习组卷、分类管理和用户管理 ## 1. 技术栈 - 前端:React 18 + Vite + Ant Design + Recharts - 后端:Node.js + Express - 数据库:SQLite 文件数据库 - 推荐运行环境:Windows 10/11 + Node.js 20 LTS 或 22 LTS + npm 10+ SQLite 不需要单独安装,系统首次启动后端时会自动生成数据库文件。 ## 2. 项目亮点 - 提供课程、作业、笔记、题库四类核心业务模块,形成完整学习闭环。 - 支持管理员与普通用户两类角色,具备登录鉴权与基础权限区分。 - 内置数据看板、学习工作台、课程总览、作业推进、笔记归档、题库组卷等可答辩演示页面。 - 新增分类管理模块,默认预置不少于 100 个课程与学习资源相关分类项,管理员可继续扩展。 - 使用 SQLite 自动初始化数据库,适合 Windows 本地直接运行。 ## 3. 目录结构 ```text frontend/ 前端项目 backend/ 后端项目 database/ 数据库脚本 docs/ 论文与系统文档 ``` ## 4. 新手运行步骤 ### 4.1 启动后端 ```bash cd D:\Ten-Projects\02-student-course-assistance-system\backend npm install npm run dev ``` 后端地址: ```text http://localhost:9012 ``` 健康检查: ```text http://localhost:9012/api/health ``` ### 4.2 启动前端 重新打开一个终端: ```bash cd D:\Ten-Projects\02-student-course-assistance-system\frontend npm install npm run dev ``` 前端地址: ```text http://localhost:5174/ ``` 运行到这里后,浏览器会打开登录页。可直接使用下面账号登录: - 管理员: `course_admin` / `Pass@123` - 普通用户: `course_user` / `Pass@123` - 演示学生: `assistant_demo` / `Pass@123` 建议第一次演示或检查时先使用管理员账号,因为管理员可以看到类别管理、用户管理和完整业务功能。 ### 4.3 一键启动 Windows 可双击: ```text start-project.bat ``` ## 5. 默认账号 - 管理员:`course_admin` / `Pass@123` - 普通用户:`course_user` / `Pass@123` - 演示学生:`assistant_demo` / `Pass@123` ## 6. 数据库说明 数据库类型:SQLite。 数据库文件: ```text backend/data/student-course-assistance-system.db ``` 首次启动后端会自动执行: ```text database/init.sql database/sample_data.sql ``` 如果要恢复初始数据,关闭后端后删除 `backend/data` 下的 `.db`、`.db-shm`、`.db-wal` 文件,再重新启动后端。 ## 7. 分类管理 系统已新增“分类管理”模块,默认预置不少于 100 个业务分类项,管理员可以随时新增、编辑、停用、启用和删除分类项。课程信息、作业跟踪、学习笔记和题库资源中的下拉框会读取启用状态的分类项。 ## 8. 详细部署文档 新手请优先阅读: [docs/06_部署说明.md](docs/06_部署说明.md) 该文档包含环境安装、目录说明、启动命令、数据库说明、Gitee 上传建议和常见问题。 ## 9. 核心功能 ### 9.1 数据看板 - 展示进行中课程、待完成作业、待共享笔记、可用题目等核心指标。 - 展示作业完成状态分布与课程进度对比图。 - 展示各业务模块的近期动态时间线。 ### 9.2 学习工作台 - 查看本周课程安排。 - 查看紧急作业提醒。 - 查看最近沉淀的学习笔记。 - 查看推荐练习题与课程推进看板。 ### 9.3 课程信息管理 - 课程新增、编辑、查询、分页展示。 - 按学期、状态筛选课程。 - 查看单课程总览,包括关联作业、关联笔记、关联题目和题目难度统计。 ### 9.4 作业跟踪 - 作业新增、编辑、查询。 - 按完成状态、优先级筛选。 - 推进作业状态并录入评分。 - 自动体现提醒状态与逾期状态。 ### 9.5 学习笔记 - 笔记新增、编辑、详情查看。 - 支持课堂笔记、复习提纲、错题整理、实验记录等类型。 - 支持笔记归档,形成“沉淀-共享-归档”闭环。 ### 9.6 题库资源 - 题目新增、编辑、分页查询。 - 按课程、难度、状态筛选题目。 - 支持按课程、题型、难度生成练习题单。 ### 9.7 分类管理 - 管理员维护课程方向、学期、考核方式、任务类型、笔记类型、题目类型、难度等级、知识标签等分类项。 - 新增分类项后可直接用于业务下拉框。 ### 9.8 用户管理 - 管理员维护账号、角色、状态。 - 支持新增、编辑、删除演示账号。 ## 10. 推荐演示路线 1. 使用管理员账号登录系统。 2. 进入“数据看板”展示总体指标与统计图。 3. 进入“分类管理”展示 100+ 个业务类别和新增分类能力。 4. 进入“学习工作台”展示课程安排与紧急作业提醒。 5. 进入“课程信息”打开某门课程总览。 6. 进入“作业跟踪”推进某项作业并回写评分。 7. 进入“学习笔记”展示笔记详情并执行归档。 8. 进入“题库资源”执行智能组卷并展示生成结果。 ## 11. 支持材料 - 项目简介:[docs/01_项目简介.md](docs/01_项目简介.md) - 需求分析:[docs/02_需求分析.md](docs/02_需求分析.md) - 系统设计:[docs/03_系统设计.md](docs/03_系统设计.md) - 数据库设计:[docs/04_数据库设计.md](docs/04_数据库设计.md) - 接口文档:[docs/05_接口文档.md](docs/05_接口文档.md) - 部署说明:[docs/06_部署说明.md](docs/06_部署说明.md) - 使用手册:[docs/07_使用手册.md](docs/07_使用手册.md) - 测试说明:[docs/08_测试说明.md](docs/08_测试说明.md)