Skip to content

An example of using MongoDB with FastAPI framework implemented with DDD

Notifications You must be signed in to change notification settings

greedWizard/fastapi-mongodb

Repository files navigation

Приложение для теста fastapi + mongo

ТЗ

  • Реализовать веб-приложение которое предоставляет собой один API метод для получения списка определенных сотрудников.
  • Приложение должно быть асинхронным и реализовано с использованием FastAPI и MongoDB.
  • Код должен выглядеть так, как отданный на ревью перед выпуском в продакшн.
  • Если прод-реализация каких-то частей предполагает собой слишком сложный/большой кусок кода, то можно делать более простую реализацию и добавлять комментарий # TODO, в котором указать, какой вы видите окончательную реализацию данной фичи.
  • Плюсом будет использование Docker, покрытие тестами

Запуск

Заполнить энвы по аналогии с .env.example

Через докер:

  • make all - поднять приложение целиком
  • make logs - смотреть логи
  • make drop-all - остановить контейнеры

Локально:

  • make storage - запустить монгу
  • poetry shell && uvicorn --factory api.app:create_app --host 0.0.0.0 --port 8000 --reload

TODO:

  • Тесты
  • Асинхронный движок для монги (Motor)

Заполнить тестовую базу

ipython fill_database.py

About

An example of using MongoDB with FastAPI framework implemented with DDD

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published