Skip to content

MrKarkk/MedBooker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MedBooker

MedBooker — сервис онлайн-записи и электронной очереди для медицинских клиник.

Описание проекта

MedBooker решает проблему организации потока пациентов в медицинских клиниках. Пациенты могут записаться на приём онлайн без звонков и посещения клиники, а клиники получают удобный инструмент для управления расписанием врачей и очередями.

Система может использоваться как самостоятельный сервис или интегрироваться с существующими медицинскими информационными системами через API.

Возможности для пациентов

  • Запись на приём онлайн без звонков
  • Просмотр доступных врачей и их расписания
  • Выбор удобного времени визита
  • Получение уведомлений о записи через Telegram
  • Управление своими записями (просмотр, отмена)
  • Электронная очередь с отслеживанием статуса

Возможности для клиник

  • Управление расписанием врачей
  • Автоматическое распределение записей по времени
  • Контроль потока пациентов
  • Уменьшение нагрузки на регистратуру
  • Статистика и аналитика записей
  • API для интеграции с существующими системами
  • Уведомления пациентов через Telegram-бот

Как работает система

  1. Администратор клиники настраивает расписание врачей и доступные услуги
  2. Пациент заходит на сайт или в Telegram-бот и выбирает врача, услугу и время
  3. Система создаёт запись и отправляет уведомление пациенту
  4. В день приёма пациент приходит в клинику в назначенное время
  5. Администратор управляет очередью и статусами приёмов

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

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 должны быть свободны

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

  1. Клонируйте репозиторий:
git clone https://github.com/MrKarkk/MedBooker.git
cd MedBooker
  1. Создайте файлы окружения из примеров:
cp .env.example .env
cp backend/.env.example backend/.env
cp bot/.env.example bot/.env
  1. Отредактируйте файлы .env и укажите свои параметры:

    • Данные для подключения к PostgreSQL
    • SECRET_KEY для Django
    • ALLOWED_HOSTS (домены вашего сервера)
    • Токен Telegram-бота
    • API ключи при необходимости
  2. Запустите проект:

docker-compose up -d
  1. Создайте базу данных PostgreSQL:
docker exec -it medbooker_postgres psql -U medbooker_admin_2026 -c "CREATE DATABASE medbooker_db;"
  1. Выполните миграции базы данных:
docker exec -it medbooker_backend python manage.py migrate
  1. Создайте суперпользователя:
docker exec -it medbooker_backend python manage.py createsuperuser
  1. Откройте в браузере:

Подключение клиники

Шаг 1: Регистрация

  1. Перейдите в админ-панель Django по адресу http://localhost:8000/admin/
  2. Войдите под учётной записью суперпользователя
  3. Создайте учётную запись для клиники

Шаг 2: Настройка клиники

  1. Добавьте информацию о клинике (название, адрес, контакты)
  2. Создайте список врачей и специальностей
  3. Настройте расписание работы врачей
  4. Добавьте список услуг и их стоимость

Шаг 3: Настройка Telegram-бота

  1. Создайте бота через @BotFather
  2. Получите токен бота
  3. Добавьте токен в bot/.env файл
  4. Перезапустите контейнер бота

Шаг 4: Интеграция через API (опционально)

Если у клиники есть своя информационная система, можно интегрировать 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.

About

MedBooker - это сервис онлайн-записи и электронной очереди для медицинских клиник.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors