Skip to content
ProstoKiRealPublic

About

Booking System

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

45 Commits

Folders and files

Repository files navigation

Web приложение для бронирования билетов в кино/музей/театр/выставку и т.д.

Приложение создано в учебных целях с целью изучить: - Микросервисную архитектуру - DDD - Брокеры сообщений

Warning

Весь фронтенд НАВАЙБКОЖЕН. Создан исключительно чтобы потешить своё эго

Сервисы

  • KrakenD (Gateway)
  • KeyCloack (Авторизация и управление ролями)
  • Каталог и Бронирование

Технологии

Сервис бронирования

Технология Назначение
Python 3.13 Язык программирования
FastAPI, Uvicorn HTTP API и ASGI-сервер
SQLAlchemy, asyncpg Работа с PostgreSQL
Pydantic Settings Настройки приложения
Dishka Внедрение зависимостей
Alembic Миграции базы данных
pytest, HTTPX Тестирование
FastStream Зависимость для брокеров сообщений; брокер пока не подключён

Фронтенд

Технология Назначение
React 19 Пользовательский интерфейс
TypeScript Типизация клиентского кода
Vite Dev-сервер и production-сборка
Tailwind CSS 4, shadcn/ui, Radix UI, Lucide Стилизация, доступные компоненты и иконки
React Hook Form, Zod Управление формами и декларативная валидация
TanStack Query Загрузка, кэширование и мутации серверных данных
shadcn/ui, Radix UI Общие компоненты и dashboard-админка управления категориями
keycloak-js, @react-keycloak/web Keycloak Authorization Code + PKCE для SPA

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

Технология Назначение
KrakenD API Gateway: маршрутизация, CORS и проверка JWT-токенов и ролей
Keycloak, OpenID Connect Аутентификация, управление ролями и учётными записями
PostgreSQL 17 Хранение данных Keycloak и сервиса бронирования
Nginx Прокси Keycloak и ограничение доступа к разделам кабинета
Docker Compose Сборка и совместный запуск сервисов

Запуск

cp .env.example .env

make up

Тестирование

make test-booking

Ресурсы

Документы

Note

Прежде всего, этот раздел нужен самому разработчику чтобы понимать как двигаться и что нужно сделать

About

Booking System

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages