A modern and feature-rich classroom management system, providing student score management, homework management, hygiene management, random number generation, and more.
- 中文说明
- Features
- Tech Stack
- Directory Structure
- Quick Start
- Feature Modules
- Configuration
- Development Guide
- Deployment
- Star History
- Contributing
- License
- Contact
- Acknowledgments
| Module | Description |
|---|---|
| Score Management | Student score statistics, leaderboard, score addition/deduction operations |
| Homework Management | Homework assignment, submission status tracking |
| Hygiene Management | Duty schedule, cleaning status management |
| Random Number | Classroom random questioning function |
| Rule Management | Custom classroom rules |
| Data Dashboard | Real-time data visualization display |
| System Monitoring | Server status monitoring |
| Data Backup | Automatic backup and recovery |
| Category | Technologies |
|---|---|
| Backend | Node.js + Express + HTTP/2 |
| Frontend | Native JavaScript + CSS3 |
| UI Framework | LuminaUI |
| Data Storage | LocalStorage + JSON files |
| Build Tool | Webpack |
smart-classroom5.1/
├── public/ # Frontend resources
│ ├── css/ # Style files
│ ├── js/ # JavaScript files
│ ├── assets/ # Static assets
│ ├── LuminaUI/ # UI component library
│ └── *.html # Page files
├── src/ # Backend source code
│ ├── server-http2.js # HTTP/2 server
│ └── generate-ssl.js # SSL certificate generation
├── data/ # Data storage
│ └── backups/ # Data backups
├── ssl/ # SSL certificates
├── docs/ # Documentation
├── scripts/ # Scripts
├── package.json # Project configuration
├── LICENSE # Open source license
└── README.md # Project description
- Node.js 14+
- npm or yarn
# Clone the repository
git clone https://github.com/monologue82/smart-classroom.git
cd smart-classroom5.1
# Install dependencies
npm install# Development mode
npm start
# HTTP/2 mode
npm run start:http2
# HTTPS mode (generate certificate first)
npm run generate-ssl
npm run start:http2-sslOpen your browser and visit: http://localhost:3000
- User login/logout
- Session management
- Permission control
- Feature navigation
- Quick access
- System overview
- Student score query
- Score leaderboard
- Score addition/deduction operations
- Operation record viewing
- Homework publication
- Submission status tracking
- History record query
- Duty schedule
- Cleaning status marking
- History records
- Random student selection
- Selection range settings
- History records
- Real-time data display
- Statistical charts
- Key indicator monitoring
Default port: 3000, can be modified in src/server-http2.js
# Generate SSL certificate
npm run generate-sslUSE_SSL=true: Enable HTTPS
public/: All frontend resourcessrc/: Backend service codedata/: Data file storage
- Create the corresponding HTML page in
public/ - Add business logic in
public/js/ - Add styles in
public/css/ - Add API in
src/if backend support is needed
- Use ES6+ syntax
- Follow modular development
- Keep code clear and concise
# Build the project
npm run build
# Start the service
npm startnpm install -g pm2
pm2 start src/server-http2.js --name smart-classroomWelcome to contribute! Please follow these steps:
- Fork this repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the Apache License 2.0 - see the LICENSE file for details
- Project Homepage: GitHub Repository
- Issue Tracker: Issues
- Email: 2627641908@QQ.com
- Bilibili: 骄傲的狼W0R
Thanks to all developers who have contributed to this project!
Note: When using the system for the first time, please register an administrator account and initialize system data.
一个现代化的、功能丰富的班级管理系统,提供学生积分管理、作业管理、卫生管理、随机抽号等功能。
| 模块 | 描述 |
|---|---|
| 积分管理 | 学生积分统计、排行榜、加分/扣分操作 |
| 作业管理 | 作业布置、上交情况追踪 |
| 卫生管理 | 值日安排、清洁状态管理 |
| 随机抽号 | 课堂随机提问功能 |
| 规则管理 | 班级规则自定义 |
| 数据大屏 | 实时数据可视化展示 |
| 系统监控 | 服务器状态监控 |
| 数据备份 | 自动备份与恢复 |
| 类别 | 技术 |
|---|---|
| 后端 | Node.js + Express + HTTP/2 |
| 前端 | 原生 JavaScript + CSS3 |
| UI框架 | LuminaUI |
| 数据存储 | LocalStorage + JSON文件 |
| 构建工具 | Webpack |
smart-classroom5.1/
├── public/ # 前端资源
│ ├── css/ # 样式文件
│ ├── js/ # JavaScript文件
│ ├── assets/ # 静态资源
│ ├── LuminaUI/ # UI组件库
│ └── *.html # 页面文件
├── src/ # 后端源码
│ ├── server-http2.js # HTTP/2服务器
│ └── generate-ssl.js # SSL证书生成
├── data/ # 数据存储
│ └── backups/ # 数据备份
├── ssl/ # SSL证书
├── docs/ # 文档
├── scripts/ # 脚本
├── package.json # 项目配置
├── LICENSE # 开源协议
└── README.md # 项目说明
- Node.js 14+
- npm 或 yarn
# 克隆项目
git clone https://github.com/monologue82/smart-classroom.git
cd smart-classroom5.1
# 安装依赖
npm install# 开发模式
npm start
# HTTP/2模式
npm run start:http2
# HTTPS模式(需先生成证书)
npm run generate-ssl
npm run start:http2-ssl打开浏览器访问:http://localhost:3000
- 用户登录/登出
- 会话管理
- 权限控制
- 功能导航
- 快捷入口
- 系统概览
- 学生积分查询
- 积分排行榜
- 加分/扣分操作
- 操作记录查看
- 作业发布
- 上交状态追踪
- 历史记录查询
- 值日安排
- 清洁状态标记
- 历史记录
- 随机抽取学生
- 抽取范围设置
- 历史记录
- 实时数据展示
- 统计图表
- 关键指标监控
默认端口:3000,可在 src/server-http2.js 中修改
# 生成SSL证书
npm run generate-sslUSE_SSL=true:启用HTTPS
public/:所有前端资源src/:后端服务代码data/:数据文件存储
- 在
public/中创建对应的HTML页面 - 在
public/js/中添加业务逻辑 - 在
public/css/中添加样式 - 如需要后端支持,在
src/中添加API
- 使用 ES6+ 语法
- 遵循模块化开发
- 保持代码清晰简洁
# 构建项目
npm run build
# 启动服务
npm startnpm install -g pm2
pm2 start src/server-http2.js --name smart-classroom欢迎贡献代码!请遵循以下步骤:
- Fork本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启Pull Request
本项目采用 Apache License 2.0 许可证 - 详见 LICENSE 文件
- 项目主页:GitHub Repository
- 问题反馈:Issues
- 邮箱:2627641908@QQ.com
- B站:骄傲的狼W0R
感谢所有为本项目做出贡献的开发者!
注意:首次使用系统时,请先注册管理员账号并初始化系统数据。