Skip to content

synthematik/booking_app-FastAPI

Repository files navigation

Hotel Booking API

О проекте

Этот проект представляет собой API для системы бронирования отелей, разработанный с использованием FastAPI.

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

  • FastAPI: Web-фреймворк для создания API с автоматически сгенерированной документацией.
  • SQLAlchemy: ORM для работы с базой данных.
  • FastAPI-Cache: Модуль для кэширования запросов.
  • SQLAdmin: Инструмент администрирования базы данных SQL.
  • Redis: Кэш для улучшения производительности.
  • Celery: Очереди задач для асинхронной обработки.
  • Pytest: Тестирование приложения.

Установка

  1. Клонировать репозиторий:

    git clone https://github.com/yourusername/hotel-booking-api.git
    cd hotel-booking-api
  2. Создать виртуальное окружение и установить зависимости:

    python -m venv venv
    source venv/bin/activate  # для Unix/Mac
    .\venv\Scripts\activate  # для Windows
    pip install -r requirements.txt
  3. Переименовать файл .env_example --> .env и заполнить его.

  4. Настроить базу данных и конфигурацию в файле config.py.

  5. Запустить приложение:

    uvicorn main:app --reload
  6. Перейти по адресу 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": "user@example.com",
  "password": "securepassword"
}'

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published