进入大学之后需要完成大量的网课,而刷课平台实际上成本非常低,大部分同学都在被割韭菜。本项目旨在开源刷课代码, 为大家提供便利。
- 功能较为完善的前后端, 能实现在前端刷课,后端监控进度
- 支持账号密码、二维码两种登陆方式
- 支持绑定多个超星账号
- 自动完成视频、音频、阅读、图书、章节测试的任务点
- 内置多个题库和GPT接口,能够完成课程作业(单选、多选、判断、填空、简答)
- 完善的日志和错误反馈,
- 签到
- 绑定EMAIL和QQ, 通过gocq-http进行错误通知
- 自动考试
- 支持其他网课平台(雨课堂)
- 刷课实时更新百分比进度
# backend/app/core/config/__init__.py
REDIS_HOST: str = "localhost"
REDIS_TIMEOUT: int = 5
REDIS_KEY_EXPIRE_TIMEDELTA: timedelta = timedelta(minutes=5)
# backend/app/core/config/__init__.py
MYSQL_HOST: str = "127.0.0.1"
MYSQL_PORT: str = "3306"
MYSQL_USER: str = "root"
MYSQL_PASSWORD: str = "123456"
MYSQL_DB: str = "chaoxing"
# backend/app/common/constants
ENNCY_TOKEN: str = ""
EVERY_TOKEN: str = ""
HEIBOOK_TOKEN: str = ""
AIDIAN_TOKEN: str = ""
WANNENG_TOKEN: str = ""
前端采用Vite4 + Vue3开发, 使用了Pinia+TailwindCSS+ElementPlus的技术栈
npm install
安装项目依赖npm run dev
启动前端服务
后端采用Fastapi开发, 使用了Sqlalchemy+Redis的技术栈
pip install requirement.txt
安装项目依赖- 运行redis和mysql服务, 填写配置文件
- 运行
create_db.py
初始化数据库 - 运行
main.py
启动后端服务