Skip to content

(more than a) homework management information system / (不仅是一个)作业管理信息系统

Notifications You must be signed in to change notification settings

feightwywx/homework-mis

Repository files navigation

homework-mis

一个基于Next.js的作业管理信息系统。

Demo链接

备用链接(Vercel)

用户名 密码
学生端 student 123456
教师端 teacher 123456

功能

学生端

课程管理

  • 查看相关课程,及课程下的作业与考试
  • 统计课程成绩

作业管理

  • 查看被下发的作业列表,以及单项作业详情
  • 提交作业
  • 查看作业批阅情况、得分和评语

考试管理

  • 查看考试列表与详细信息
  • 查询分数

教师端

课程管理

  • 查看相关课程,及课程下的作业与考试
  • 统计课程成绩

作业管理

  • 查看自己下发的所有作业,以及单项作业内容
  • 查看作业完成情况
  • 查看某个学生的作业完成内容,批阅作业
  • 打回作业

考试管理

  • 查看考试列表与详细信息
  • 发布考试
  • 提交分数

Get Started

1. 安装依赖

npm i

2. 数据库准备

本项目使用一个名为homework_mis的MySQL 8.0数据库。

在调试之前,需要手动创建该数据库,并运行sql/homework_mis.sql来初始化表结构。

Jest测试同样调用这个数据库,但是可以通过.env.test指定不同的MySQL实例。

3. 环境变量

本项目通过环境变量存储参数。你需要在项目根目录下创建一个.env.local文件,启动服务时Next.js会自动从中载入环境变量。.env.local的结构如下:

SECRET_COOKIE_PASSWORD=
MYSQL_HOST=
MYSQL_USER=
MYSQL_PORT=  # 默认3306
MYSQL_PASSWORD=

4. 开始调试

npm run dev

通过Docker部署

本项目提供了linux/amd64linux/amd64Docker镜像

以下命令将会拉取镜像,启动一个名为的hwmis的容器,并将容器内3000端口映射到随机端口。记得替换成你自己的环境变量。

docker pull dotdirewolf/hwmis-docker
docker run -itdP --name hwmis \
-e SECRET_COOKIE_PASSWORD= \
-e MYSQL_HOST= \
-e MYSQL_USER= \
-e MYSQL_PORT= \
-e MYSQL_PASSWORD= \
dotdirewolf/hwmis-docker

About

(more than a) homework management information system / (不仅是一个)作业管理信息系统

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published