Система управления онлайн-очередью для практических занятий
Digital Queue — это высокопроизводительное решение для онлайн-управления очередями студентов на практических занятиях и лабораторных работах. Проект состоит из двух основных компонентов:
- Backend на Go: реализует REST API и WebSocket‑соединения для realtime-обновлений, а также фоновые задачи по автоматическому открытию/закрытию очередей по расписанию. Подробнее в backend README.
- Frontend на React + Vite: одностраничное приложение для интерактивного отображения групп, расписания и очередей. Подробнее в frontend README.
Систему можно запускать как локально для разработки, так и в контейнерах Docker без изменения кода.
- Регистрация и аутентификация пользователей через JWT
- Управление группами и расписанием занятий (PostgreSQL + Redis)
- Создание, присоединение и выход из очередей
- Realtime-обновления очередей по WebSocket
- Автоматическое открытие/закрытие очередей по расписанию
- Полная контейнеризация с помощью Docker Compose
digital-queue/
├── backend/ # Go-сервис (подмодуль)
├── frontend/ # React-приложение (подмодуль)
└── docker-compose.yml # Конфигурация для Docker Compose- Go 1.23+
- Node.js 20+
- Docker & Docker Compose
git clone --recurse-submodules https://github.com/Anabol1ks/digital-queue.git
cd digital-queuecd backend
cp .env.example .env # скопируйте .env.example → .env и заполните параметры БД, Redis, JWT
go mod download # установить зависимости
go run main.go # запустить сервер на http://localhost:8080Swagger UI: http://localhost:8080/swagger/index.html
cd frontend
cp .env.example .env # скопируйте .env.example → .env
npm ci # установить зависимости
# отредактируйте .env:
# VITE_API_URL=http://localhost:8080
# VITE_WS_URL=ws://localhost:8080
npm run dev # запустить приложение на http://localhost:5173Перед запуском убедитесь, что:
- В файлах
backend/.envиfrontend/.envуказаны актуальные значения переменных. - В
docker-compose.ymlразделыenvironmentдля сервисовdbиdb_test(POSTGRES_PASSWORD, POSTGRES_DB и т. д.) соответствуют вашимDB_PASSWORD,TEST_DB_PASSWORD,DB_NAMEи прочим вbackend/.env.
docker-compose up --build- Backend: http://localhost:8080
- Frontend: http://localhost:5173
- Полная документация и примеры использования API содержатся в backend README.
- Гайды по настройке и расширению фронтенда доступны в frontend README.
PR и идеи приветствуются! Пожалуйста, открывайте issues для обсуждения новых фич или багов.
© 2025 Digital Queue. Все права защищены.