Skip to content

AndreyMelman/TestTask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание

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

  • FastAPI это фреймворк для создания лаконичных и довольно быстрых HTTP API-серверов со встроенными валидацией, сериализацией и асинхронностью, что называется, из коробки.
  • SQLAlchemy программная библиотека на языке Python для работы с реляционными СУБД с применением технологии ORM.
  • Pydantic библиотека для Python, предназначенная для валидации и трансформации данных.
  • PostgreSQL свободная объектно-реляционная система управления базами данных (СУБД).
  • Docker Compose система сборки, запуска и управления множеством контейнеров.
  • Тестирование с Pytest.

Структура проекта

├── app
│  ├── .env                   # Конфигурация окружения
│  ├── .test.env              # Конфигурация окружения для тестовой БД
│  ├── alembic.ini            # Конфигурация Alembic
│  ├── api/                   # Модуль API
│  ├── core                   # Модуль работы с БД, конфиг файл
│  ├── crud/                  # Работа с базой данных
│  ├── main.py                # Основной файл для запуска приложения
│  ├── migrations/            # Миграции базы данных
│  ├── models/                # Создание таблиц в базе данных
│  ├── schemas/               # Схемы модулей
│  └── tests/                 # Тестирование API
├── docker-compose.yml        # Инструкции
├── Dockerfile                # Конфигурационный файл
├── pytest.ini                # Конфигурация Pytest
├── README.MD                 # Документация проекта
└── requirements.txt          # Зависимости проекта

Настройка

  1. Склонируйте репозиторий:

    git clone https://github.com/AndreyMelman/TestTask.git
  2. Настройте файл .env:

    APP_CONFIG__DB__URL="postgresql+asyncpg://name:password@localhost:port/database"
    
  3. Для быстрого запуска приложения запустите:

    docker compose up --build

    Создается база данных PostgreSQL, сервер Redis, запускается Celery и приложение, а также выполняются миграции базы данных.

Приложение будет доступно по адресу http://0.0.0.0:8000.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published