- Сердце фреймворка. Содержит основной функционал:
application.py
: класс приложения, где объединяются middleware, роутеры и обработчики.routing.py
: маршруты и роутеры.middleware.py
: кастомные промежуточные слои.exceptions.py
: обработка исключений и кастомные ошибки.validators.py
: функции для валидации данных.
- Каталог для Jinja2-шаблонов.
- Можно включить модульность, добавив директорию
components/
для повторно используемых частей.
- Здесь хранятся классы View (CBV), маршруты или эндпоинты:
base_view.py
: базовый класс View, который можно наследовать.examples.py
: примеры реализации.
- Каталог для статики: CSS, JS, изображения.
- Содержит описание моделей данных (ORM, например, SQLAlchemy).
- Pydantic-схемы для валидации входных/выходных данных.
- Утилиты для выполнения повторяющихся задач, например, работа с файлами, почтой, датами и т. д.
- Все тесты проекта, включая:
- Тесты для отдельных модулей.
- Интеграционные тесты.
- Конфигурации:
settings.py
: настройки приложения, аналогsettings
из Django.logging.py
: настройки логирования.