# learning platform **Repository Path**: unicorn_13/learning-platform ## Basic Information - **Project Name**: learning platform - **Description**: ○项目简介: 构建一个在线学习平台(教育领域),提供课程浏览、学习进度跟踪功能。集成AI智能问答机器人,解答学生关于课程内容的疑问。 ○核心功能: 用户注册/登录、课程列表/详情、视频播放/文档阅读、学习进度记录、AI课程问答机器人。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2025-08-20 - **Last Updated**: 2026-02-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🎓 在线学习平台 (Learning Platform) 一个现代化的在线学习平台 ## ✨ 项目特色 ### 🎯 核心功能 - **用户系统** - 注册/登录、权限管理、个人资料管理 - **课程管理** - 浏览、搜索、筛选、收藏、评价 - **学习功能** - 视频播放、进度跟踪、选课管理 - **考试系统** - 在线考试、成绩管理、证书生成 - **社区功能** - 问答互动、讨论交流 - **教师端** - 课程创建、章节管理、内容上传、考试管理 - **AI问答** - 智能课程问答机器人 ### 🎨 设计亮点 - **Udemy风格UI** - 专业、简洁的界面设计 - **响应式布局** - 完美适配桌面端和移动端 - **现代化交互** - 流畅的用户体验 - **完整权限控制** - 学生/教师/管理员角色分离 ## 🏗️ 技术架构 ## 更新 ### 前端技术栈 - **Vue 3** + **TypeScript** - 现代化前端框架 - **Vite** - 快速构建工具 - **Element Plus** - 企业级UI组件库 - **Pinia** - 状态管理 - **Vue Router** - 路由管理 - **Axios** - HTTP客户端 ### 后端技术栈 - **Spring Boot 3.2** - 企业级后端框架 - **Spring Security** - 安全认证框架 - **Spring Data JPA** - 数据访问层 - **MySQL 8.0** - 关系型数据库 - **Flyway** - 数据库版本管理 - **JWT** - 无状态身份认证 ### AI服务 - **FastAPI** - 高性能异步API框架 - **LangChain** - AI应用开发框架 - **RAG** - 检索增强生成技术 ### 开发工具 - **Docker** - 容器化部署 - **Maven** - Java项目管理 - **npm** - 前端包管理 ## 🚀 快速开始 ### 环境要求 - **Node.js** 18+ - **JDK** 17+ - **Python** 3.10+ - **MySQL** 8.0+ - **Redis** 5.0+ - **Git** ### 1. 克隆项目 ```bash git clone cd learning-platform ``` ### 2. 配置数据库 在MySQL中创建数据库和用户: ```sql CREATE DATABASE learning DEFAULT CHARACTER SET utf8mb4; CREATE USER 'learning'@'localhost' IDENTIFIED BY 'learning123'; GRANT ALL PRIVILEGES ON learning.* TO 'learning'@'localhost'; FLUSH PRIVILEGES; ``` ### 3. 配置环境变量 设置JWT密钥(必需): ```cmd set "JWT_SECRET=your-secret-key-must-be-at-least-64-characters-long-for-hs512" ``` ### 4. 启动各服务 #### 启动MySQL 确保MySQL服务运行在3306端口 #### 启动Redis 确保Redis服务运行在6379端口 #### 启动后端 (端口8080) ```cmd cd backend mvnw.cmd spring-boot:run ``` #### 启动前端 (端口5173) ```cmd cd frontend npm install npm run dev ``` #### 启动AI服务 (端口8000) ```cmd cd ai pip install -r requirements.txt python main.py ``` ### 5. 验证安装 访问以下地址验证服务状态: - 前端应用: http://localhost:5173 - 后端API: http://localhost:8080/api/v1/health - AI服务: http://localhost:8000/health ## 📱 功能展示 ### 学生端功能 - **课程浏览** - 支持分类、难度、价格筛选 - **课程详情** - 视频预览、章节列表、评价展示 - **学习中心** - 我的课程、学习进度、收藏管理 - **个人中心** - 资料编辑、密码修改 ### 教师端功能 - **教师仪表板** - 课程统计、收入概览 - **课程管理** - 创建、编辑、发布、下线 - **内容编辑** - 章节管理、文件上传、拖拽排序 - **数据分析** - 学生数量、评分统计 ### 管理功能 - **权限控制** - 基于角色的访问控制 - **文件上传** - 支持封面、视频、文档上传 - **评价系统** - 五星评分、评论管理 - **AI问答** - 智能课程内容问答 ## 📚 项目文档 - [快速上手指南](docs/getting-started.md) - [API接口文档](docs/api/contract.md) - [教师使用指南](docs/teacher-guide.md) - [数据库设计](docs/database-schema.md) ## 🛠️ 开发指南 ### 代码规范 - 前端遵循Vue 3 + TypeScript最佳实践 - 后端遵循Spring Boot规范 - 统一使用ESLint/Prettier进行代码格式化 ### 项目结构 ``` learning-platform/ ├── frontend/ # Vue 3前端应用 ├── backend/ # Spring Boot后端API ├── ai/ # FastAPI AI服务 ├── docs/ # 项目文档 ├── scripts/ # 部署脚本 └── docker-compose.yml # Docker容器编排 ``` ### Git工作流 - 主分支:`master` - 稳定版本 - 功能开发:`feature/*` - 新功能分支 - 问题修复:`hotfix/*` - 紧急修复分支 ## 🎯 版本信息 - **当前版本**: v1.0.0 - **发布日期**: 2024年1月 - **维护状态**: 活跃开发中 ### 版本特性 - ✅ 完整的用户认证系统 - ✅ 课程CRUD和筛选功能 - ✅ 评价和收藏系统 - ✅ 教师端课程管理 - ✅ 响应式UI设计 - ✅ AI智能问答集成 ## 🔧 部署说明 ### Docker部署(推荐) ```bash docker-compose up -d ``` ### 手动部署 1. 构建前端静态资源 2. 打包后端JAR文件 3. 配置生产环境数据库 4. 部署到服务器 详细部署文档请参考 [部署指南](docs/deployment.md) ## 🤝 参与贡献 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) 文件了解详情 ## 👥 开发团队 - **项目负责人** - 项目架构和管理 - **后端开发** - Spring Boot API开发 - **前端开发** - Vue.js UI开发 - **AI开发** - FastAPI智能问答 ## 📞 联系我们 - 📧 邮箱:support@eduplatform.com - 💬 反馈:[GitHub Issues](issues) - 📚 文档:[在线文档](docs/) --- ⭐ 如果这个项目对你有帮助,欢迎给我们一个star!