# Classroom Manager - A Smart Classroom Management System English | [简体中文](./zh-CN.md) ## Project Overview **Smart Classroom Management System (Classroom Manager)** is a digital management platform designed for university classrooms and teaching resources. Its goal is to centralize the management of classroom resources, move reservation and usage workflows online, and provide more efficient collaboration support for teaching scenarios. The project adopts a decoupled frontend-backend architecture. The web client delivers administration and business operation interfaces built with **Vue 3 + Element Plus**. The mobile client is implemented as a **WeChat Native Mini Program** using **TDesign** to enable convenient querying and operations. The backend is built with **Django** and **MySQL**, providing **REST-style** services and data support. In addition, the project leverages containerized deployment and engineering best practices to improve maintainability and scalability. Overall, the system emphasizes a consistent design language and component standards, delivering a unified smart classroom management experience across both PC and mobile platforms. ## Quick Deployment with Docker Compose Below are the production deployment steps. **Nginx** is used as the reverse proxy, and **Gunicorn** runs the backend service. ***For development setup, refer to the [Deployment in the development environment](../ops/development.rst).*** ### Step 1: Configure Environment Variables Based on `prod.env`, create a `.env` file in the project root directory. ### Step 2: Build and run ```bash # Build and run sudo docker compose -f docker-compose.prod.yml up --build -d # Run database migrations sudo docker compose -f docker-compose.prod.yml exec backend python manage.py migrate # Create an administrator account sudo docker compose -f docker-compose.prod.yml exec backend python manage.py createsuperuser ``` ## Documentation (Sphinx) The documentation sources live in `docs/` and can be previewed with hot reload via Docker on port 5000. ```bash docker compose up --build sphinx ``` Then open `http://localhost:5000`.