Skip to content
This repository was archived by the owner on Jun 23, 2025. It is now read-only.

AMagicPear/wooc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

悟课WOOC - 开发工具版本说明

一、项目概述

本项目是一个在线数字媒体教学平台,旨在为教师和学生提供便捷的教学和学习环境,支持多种数字媒体形式的教学内容展示和互动。

背景

在数字化教育时代,开发此平台以满足教师和学生在教学与学习过程中的需求,促进教育资源的数字化和共享。

功能要求实现情况

  1. 课程管理:教师能够创建课程,并上传课程大纲、教学视频、音频、PPT等教学资源;学生可以浏览课程列表并选择感兴趣的课程进行学习。
  2. 教学互动:提供在线讨论区供师生交流,支持作业提交与批改,以及在线测试功能,增强师生之间的互动和交流。
  3. 多媒体播放:支持高清视频、音频的流畅播放,具备播放控制功能,如暂停、快进、快退等。
  4. 学习进度跟踪:记录学生的学习进度,包括已完成的课程、观看的视频时长、作业完成情况等。
  5. 用户管理:实现教师和学生的注册、登录功能,并进行权限管理,确保不同用户角色拥有相应的操作权限。

二、开发工具及版本说明

前端

  • 运行时
    • Bun:版本 1.2.16,作为 JavaScript 和 TypeScript 的快速运行时,用于启动开发服务器和打包项目。
  • 框架
    • Vue:版本 ^3.5.13,用于构建用户界面,提供响应式和组件化的开发体验。
    • Vue Router:版本 ^4.5.0,实现前端路由管理,支持单页面应用的导航。
  • UI 组件库
    • PrimeVue:版本 ^4.3.5,提供丰富的 UI 组件,方便快速搭建界面。
    • PrimeIcons:版本 ^7.0.0,用于图标展示。
  • 模板引擎
    • Pug:版本 ^3.0.3,简化 HTML 模板的编写。
  • 多媒体播放器
    • Vidstack:版本 ^1.12.13,结合 HTML5 多媒体播放功能,实现视频和音频的流畅播放。
  • 表单处理
    • @primevue/forms:版本 ^4.3.5,用于表单验证和提交。
  • 其他依赖
    • Quill:版本 ^2.0.3,富文本编辑器,用于在线讨论和作业提交中的文本输入。
    • vue-timer-hook:版本 ^1.0.84,提供定时器功能。
  • 打包工具
    • Vite:版本 ^6.2.4,快速的构建工具,支持热更新和快速打包。
  • 类型检查
    • TypeScript:版本 ~5.8.0,为 JavaScript 代码添加静态类型检查,提高代码的可维护性。
    • vue - tsc:版本 ^2.2.8,用于 Vue 项目的 TypeScript 类型检查。
  • 插件
    • @vitejs/plugin - vue:版本 ^5.2.3,Vite 对 Vue 项目的支持插件。
    • @vue/language - plugin - pug:版本 ^2.2.10,为 Pug 模板提供语言支持。
    • vite - plugin - vue - devtools:版本 ^7.7.2,增强 Vue 开发工具的功能。

后端

  • 包管理工具
    • uv:版本 0.7.13,用于运行 Python 项目。
  • 框架
    • Flask:版本 >=3.1.1,轻量级 Web 框架,用于快速搭建后端服务。
    • Flask - CORS:版本 >=6.0.1,解决跨域请求问题。
  • 数据库:项目中使用 SQLite 作为数据库,通过自定义的数据库连接函数 get_db_connection 进行数据库操作。
  • 加密库
    • Bcrypt:版本 >=4.3.0,用于用户密码的加密和验证。

三、运行项目

前端

  1. 克隆项目到本地:
git clone git@gitee.com:amagicpear/wooc.git
cd wooc/frontend
  1. 安装依赖:
bun install
  1. 启动开发服务器:
bun dev
  1. 打包项目:
bun run build

后端

  1. 进入后端项目目录:
cd wooc/backend
  1. 同步依赖:
uv sync
  1. 数据库初始化:
uv run main.py
  1. 启动后端服务:
uv run app.py

VS Code 配置

如果使用 VS Code 作为开发工具,则可以打开项目根目录下的wooc.code-workspace工作区,来同时进行前后端的编辑工作。
另外,在此工作区也配置了快速运行的任务,可以直接运行任务来启动全栈项目。

四、注意事项

  • 数据库操作相关的代码位于 wooc/backend/util 目录下,sqlite数据库文件本身也在此目录下生成。
  • 要按照上述流程操作需要确保运行环境中提前配置好了bun以及uv。否则,也可以使用node npm以及pip来安装依赖和运行项目。

About

山寨版MOOC

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •