Этот проект представляет собой API для системы бронирования отелей, разработанный с использованием FastAPI.
- FastAPI: Web-фреймворк для создания API с автоматически сгенерированной документацией.
- SQLAlchemy: ORM для работы с базой данных.
- FastAPI-Cache: Модуль для кэширования запросов.
- SQLAdmin: Инструмент администрирования базы данных SQL.
- Redis: Кэш для улучшения производительности.
- Celery: Очереди задач для асинхронной обработки.
- Pytest: Тестирование приложения.
- 
Клонировать репозиторий: git clone https://github.com/yourusername/hotel-booking-api.git cd hotel-booking-api
- 
Создать виртуальное окружение и установить зависимости: python -m venv venv source venv/bin/activate # для Unix/Mac .\venv\Scripts\activate # для Windows pip install -r requirements.txt 
- 
Переименовать файл .env_example --> .env и заполнить его. 
- 
Настроить базу данных и конфигурацию в файле config.py.
- 
Запустить приложение: uvicorn main:app --reload 
- 
Перейти по адресу http://127.0.0.1:8000/docs для доступа к документации API. 
- Регистрация и аутентификация пользователей.
- Получение списка отелей и комнат.
- Бронирование номеров.
Пример запроса на регистрацию пользователя:
curl -X 'POST' \
  'http://127.0.0.1:8000/auth/register/' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "email": "[email protected]",
  "password": "securepassword"
}'