Python-фреймворк для создания API со стандартными аннотациями типов, автоматической валидацией, документацией OpenAPI и высокой производительностью.
zhanymkanov/fastapi-best-practices
Рекомендации и соглашения по созданию готовых к продакшену приложений на FastAPI на основе опыта работы в стартапах.
- Звёзды
- 18,217
- Форки
- 1,329
- Открытые issues
- 16
- Последний коммит
- 2 месяца назад
Что это?
В этом руководстве собраны практические соглашения по созданию продакшен-бэкендов на FastAPI. В нём рассказывается, как структурировать монолит с множеством доменов, когда использовать async- и sync-маршруты и зависимости, как организовать модели и настройки Pydantic, а также как выстраивать зависимости для валидации и повторного использования.
Руководство охватывает и работу с данными и инструментами: проектирование запросов с приоритетом SQL, правила миграций Alembic, соглашения об именовании в базе данных, выбор между BackgroundTasks и полноценной очередью задач, управление видимостью документации API и написание асинхронных интеграционных тестов с httpx и переопределением зависимостей. Большинство разделов сопровождается примерами кода.
Материал рассчитан на Python-разработчиков, уже знакомых с FastAPI и ищущих рекомендации по поддерживаемой структуре проекта и распространённым ошибкам — например, блокировке event loop или неправильному использованию BackgroundTasks. В дополнительном файле AGENTS.md те же правила представлены в машиночитаемом формате для AI-агентов, пишущих код.
Ключевые возможности
- 01Рекомендации по структуре проекта: организация монолита по доменным модулям.
- 02Объяснение того, когда sync- и async-маршруты и зависимости выполняются в threadpool.
- 03Приёмы объединения и кэширования зависимостей для валидации запросов.
- 04Соглашения по Pydantic, включая собственную базовую модель и разделение BaseSettings.
- 05Рекомендации по запросам с приоритетом SQL, миграциям Alembic и именованию объектов базы данных.
- 06Настройка тестирования с асинхронными клиентами httpx и dependency_overrides, а также использование ruff для линтинга и форматирования.
Сценарии использования
- Структурирование растущего монолита на FastAPI с множеством доменов и модулей.
- Знакомство разработчиков с соглашениями команды по FastAPI.
- Проверка выбора между async и sync, чтобы не блокировать event loop.
- Передача AI-агентам единообразных правил для FastAPI через AGENTS.md.
Что важно знать
- В метаданных проекта не указана лицензия.
Темы
Частые вопросы
- Что такое fastapi-best-practices?
- Рекомендации и соглашения по созданию готовых к продакшену приложений на FastAPI на основе опыта работы в стартапах. В этом руководстве собраны практические соглашения по созданию продакшен-бэкендов на FastAPI. В нём рассказывается, как структурировать монолит с множеством доменов, когда использовать async- и sync-маршруты и зависимости, как организовать модели и настройки Pydantic, а также как выстраивать зависимости для валидации и повторного использования.
- fastapi-best-practices можно использовать бесплатно? Какая у него лицензия?
- У fastapi-best-practices не указана лицензия. Код открыт, но без лицензии нет явного разрешения на его использование — уточните у автора, прежде чем на него полагаться.
- fastapi-best-practices всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в fastapi-best-practices — 27 авг. 2026 г..
- Для чего можно использовать fastapi-best-practices?
- Структурирование растущего монолита на FastAPI с множеством доменов и модулей. Знакомство разработчиков с соглашениями команды по FastAPI. Проверка выбора между async и sync, чтобы не блокировать event loop. Передача AI-агентам единообразных правил для FastAPI через AGENTS.md.
- Где скачать fastapi-best-practices?
- Исходный код и инструкции по установке — на GitHub: https://github.com/zhanymkanov/fastapi-best-practices
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа с мультиагентными системами без кода: задавайте агентов, рабочие процессы и задачи через YAML и веб-консоль, чтобы создавать ПО и другие материалы.
Официальная Python-библиотека для OpenAI REST API с синхронными и асинхронными клиентами и типизированными моделями запросов и ответов.
Фреймворк на Python для создания веб-интерфейсов и небольших приложений без HTML, CSS и JavaScript.
Лёгкий ASGI-фреймворк и набор инструментов для создания асинхронных веб-сервисов и API на Python.
Официальная клиентская библиотека Python для работы с локальными и облачными моделями Ollama через API чата, генерации, эмбеддингов и управления моделями.