FastAPI и автоматическое документирование

Сегодня был на встрече с разработчиками и поразила скорость, с которой ребята вели разработку API, при этом документация не отставала от процесса разработки. Решил разобраться, как же это им так удается всё быстро делать.

Секрет оказался донельзя прост – ребята использовали FastAPI.

FastAPI — относительно новый веб-фреймворк, написанный на языке программирования Python для создания REST (а если сильно постараться то и GraphQL) API, основанный на новых возможностях Python 3.6+, таких как: подсказки типов (type-hints), нативная асинхронность (asyncio). Помимо всего прочего, FastAPI плотно интегрируется с OpenAPI-schema и автоматически генерирует документацию для вашего API посредством Swagger и ReDoc.

FastAPI построен на базе Starlette и Pydantic.

  • Starlette — ASGI микро-фреймворк для написания веб-приложений.
  • Pydantic — библиотека для парсинга и валидации данных основанная на Python type-hints.

Если заинтересовались – вот ссылка на статью, где есть подробная инструкция, расписанная по шагам : https://habr.com/ru/post/478620/.

Enjoy!