Skip to content

Добро пожаловать!

Спасибо, что решили внести вклад в FastOpenAPI 🎉
В этом руководстве описано, как начать, вносить изменения, оформлять коммиты, отправлять pull request и запускать тесты.


Установка и запуск

Установите зависимости с помощью:

# Fork the repo on GitHub first, then:
git clone https://github.com/yourusername/fastopenapi.git
cd fastopenapi
poetry install

Если вы не используете poetry, можно установить зависимости вручную из pyproject.toml:

pip install -e .[dev]

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

  • fastopenapi/ — основная библиотека
  • examples/ — примеры для разных фреймворков
  • tests/ — тесты для каждого поддерживаемого фреймворка
  • benchmarks/ — тесты производительности
  • docs/ — документация на нескольких языках

Запуск тестов

Для запуска тестов:

pytest

Покрываются как внутренняя логика, так и интеграции с aiohttp, flask, sanic и другими.


Стиль кода

В проекте используются:

  • black — автоформатирование кода
  • flake8 — линтер
  • isort — сортировка импортов
  • pre-commit — хуки перед коммитом

Установите хуки:

pre-commit install

Запустить все проверки вручную:

pre-commit run --all-files

Git и Pull Request

  1. Сделайте fork репозитория
  2. Создайте ветку: feature/ваша-фича или fix/ваш-фикс
  3. Пишите осмысленные и атомарные коммиты
  4. Откройте PR с понятным описанием:
  5. Что было добавлено или изменено?
  6. Какие фреймворки затронуты?
  7. Как это тестировалось?

Документация

Если ваши изменения затрагивают публичный API или поведение, обновите соответствующую документацию:

  • docs/en/
  • Если возможно, также обновите переводы (необязательно)

Обратная связь

Не уверены, как реализовать фичу?
Откройте issue с предложением — с радостью обсудим!