MedBooker — сервис онлайн-записи и электронной очереди для медицинских клиник.
MedBooker решает проблему организации потока пациентов в медицинских клиниках. Пациенты могут записаться на приём онлайн без звонков и посещения клиники, а клиники получают удобный инструмент для управления расписанием врачей и очередями.
Система может использоваться как самостоятельный сервис или интегрироваться с существующими медицинскими информационными системами через API.
- Запись на приём онлайн без звонков
- Просмотр доступных врачей и их расписания
- Выбор удобного времени визита
- Получение уведомлений о записи через Telegram
- Управление своими записями (просмотр, отмена)
- Электронная очередь с отслеживанием статуса
- Управление расписанием врачей
- Автоматическое распределение записей по времени
- Контроль потока пациентов
- Уменьшение нагрузки на регистратуру
- Статистика и аналитика записей
- API для интеграции с существующими системами
- Уведомления пациентов через Telegram-бот
- Администратор клиники настраивает расписание врачей и доступные услуги
- Пациент заходит на сайт или в Telegram-бот и выбирает врача, услугу и время
- Система создаёт запись и отправляет уведомление пациенту
- В день приёма пациент приходит в клинику в назначенное время
- Администратор управляет очередью и статусами приёмов
Backend:
- Django 5.0.1 + Django REST Framework
- PostgreSQL 16
- JWT аутентификация
- Gunicorn
Frontend:
- React 19.2
- Vite 7.2
- Tailwind CSS
- Axios
Telegram Bot:
- aiogram 3.4
- APScheduler
Инфраструктура:
- Docker + Docker Compose
- Nginx
- Docker и Docker Compose
- Порты 80 и 8000 должны быть свободны
- Клонируйте репозиторий:
git clone https://github.com/MrKarkk/MedBooker.git
cd MedBooker- Создайте файлы окружения из примеров:
cp .env.example .env
cp backend/.env.example backend/.env
cp bot/.env.example bot/.env-
Отредактируйте файлы
.envи укажите свои параметры:- Данные для подключения к PostgreSQL
- SECRET_KEY для Django
- ALLOWED_HOSTS (домены вашего сервера)
- Токен Telegram-бота
- API ключи при необходимости
-
Запустите проект:
docker-compose up -d- Создайте базу данных PostgreSQL:
docker exec -it medbooker_postgres psql -U medbooker_admin_2026 -c "CREATE DATABASE medbooker_db;"- Выполните миграции базы данных:
docker exec -it medbooker_backend python manage.py migrate- Создайте суперпользователя:
docker exec -it medbooker_backend python manage.py createsuperuser- Откройте в браузере:
- Фронтенд: http://localhost
- API: http://localhost:8000/api/
- Админ-панель: http://localhost:8000/admin/
- Перейдите в админ-панель Django по адресу http://localhost:8000/admin/
- Войдите под учётной записью суперпользователя
- Создайте учётную запись для клиники
- Добавьте информацию о клинике (название, адрес, контакты)
- Создайте список врачей и специальностей
- Настройте расписание работы врачей
- Добавьте список услуг и их стоимость
- Создайте бота через @BotFather
- Получите токен бота
- Добавьте токен в
bot/.envфайл - Перезапустите контейнер бота
Если у клиники есть своя информационная система, можно интегрировать MedBooker через REST API:
- API доступен по адресу: http://localhost:8000/api/
- Используйте JWT токены для аутентификации
- API позволяет создавать, читать, обновлять и удалять записи программно
MedBooker/
├── backend/ # Django REST API
├── frontend/ # React приложение
├── bot/ # Telegram бот
├── docker-compose.yml
└── docker-compose.dev.yml
Проект разрабатывается для образовательных целей.
По вопросам использования и доработки проекта обращайтесь через Issues в репозитории GitHub.