Добро пожаловать!
Спасибо, что решили внести вклад в 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
- Сделайте fork репозитория
- Создайте ветку:
feature/ваша-фичаилиfix/ваш-фикс - Пишите осмысленные и атомарные коммиты
- Откройте PR с понятным описанием:
- Что было добавлено или изменено?
- Какие фреймворки затронуты?
- Как это тестировалось?
Документация
Если ваши изменения затрагивают публичный API или поведение, обновите соответствующую документацию:
docs/en/- Если возможно, также обновите переводы (необязательно)
Обратная связь
Не уверены, как реализовать фичу?
Откройте issue с предложением — с радостью обсудим!