Skip to content

iamlorddop/college-schedule

Repository files navigation

Экспресс Расписание Колледжа 🚀

Веб-приложение для управления расписанием учебного заведения

Пример интерфейса

📌 О проекте

Экспресс Расписание для Колледжа - это комплексная микросервисная система для автоматизации составления и управления учебным расписанием в средних специальных учебных заведениях.

Система предоставляет:

  • Интеллектуальную генерацию расписаний

  • Централизованное управление учебными данными

  • Многофункциональную аналитику нагрузки

  • Персонализированные интерфейсы для разных ролей

🌟 Ключевые возможности

📅 Управление расписанием

  • Автоматическая генерация с учетом 50+ параметров

  • Конфликт-менеджер занятий

  • Гибкая система замен и переносов

  • Визуальный редактор расписания

👨‍🏫 Администрирование

  • Центр управления учебными планами

  • Настройка нагрузок преподавателей

  • Управление аудиторным фондом

  • Контроль учебных групп

📊 Аналитика

  • Мониторинг загрузки преподавателей

  • Анализ использования аудиторий

  • Статистика по группам

  • Экспорт отчетов в 3-x форматах (excel, pdf, docx)

🛠 Технологический стек

Микросервисная архитектура

graph TD
    A[Frontend] --> B[API Gateway]
    B --> C[Auth Service]
    B --> D[Data Service]
    B --> E[Schedule Service]
    B --> F[Reporting Service]
Loading

Frontend

React TypeScript Ant Design

Backend

Django Django REST Framework PostgreSQL Celery Redis RabbitMQ

Инфраструктура

Docker Nginx GitHub Actions

🚀 Быстрый старт

Требования

  • Docker 20.10+
  • Docker Compose 1.29+
  • Node.js 16+ (для разработки фронтенда)

Инструкция

  1. Клонируйте репозиторий:

    git clone https://github.com/iamlorddop/college-schedule.git
    cd college-schedule
  2. Настройте переменные окружения:

    cp .env.example .env # Отредактируйте .env по необходимости
  3. Запустите систему:

    docker-compose up -d --build
  4. Применяем миграции:

    docker-compose exec backend python manage.py migrate
  5. Создаем суперпользователя:

    docker-compose exec backend python manage.py createsuperuser
  6. Подключитесь к PostgreSQL в контейнере:

    docker-compose exec db psql -U postgres -d college_schedule
  7. Запуск фронтенда (для разработки):

    cd frontend
    npm install
    npm run dev
  8. Система доступна по адресам:

📚 Документация

API Endpoints

Полная документация API доступна после запуска:

http://localhost:8080

Ролевая модель

  1. Администратор - полный доступ

  2. Преподаватель - просмотр своего расписания

  3. Студент - просмотр расписания группы

Примеры запросов

Авторизация:

curl -X POST http://localhost:8000/api/auth/login/ \
  -H "Content-Type: application/json" \
  -d '{"username":"admin", "password":"admin"}'

Получение расписания:

curl -X GET http://localhost:8000/api/schedule/ \
  -H "Authorization: Bearer {token}"

🤝 Как внести вклад

  1. Форкните репозиторий

  2. Создайте ветку для вашей фичи (git checkout -b feature/AmazingFeature)

  3. Сделайте коммит изменений (git commit -m 'Add some AmazingFeature')

  4. Запушьте в ветку (git push origin feature/AmazingFeature)

  5. Откройте Pull Request

📜 Лицензия

MIT License. Подробнее см. LICENSE.

About

Веб-приложение для управления расписанием учебного заведения

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors