EnglishРусский中文

Урок 5. Участие в проекте HAPI#

Зачем это нужно#

HAPI — проект с открытым исходным кодом. Это значит, что любой может предложить улучшения, исправить ошибки или помочь с документацией. В этом уроке вы узнаете, как правильно внести свой вклад.

Правила сообщества#

Прежде чем начать, запомните четыре простых правила:

  • 🤝 Будьте дружелюбны и уважительны — относитесь к каждому с добротой
  • 🙋 Помогайте другим — делитесь знаниями
  • 💬 Давайте конструктивную обратную связь — обсуждайте код, а не человека
  • Будьте терпеливы — у всех разный уровень опыта

Что можно сделать#

1. Сообщить об ошибке (Bug Report)#

Bug (баг) — ошибка в программе, когда что-то работает не так, как ожидалось.

Если вы нашли проблему, создайте issue на GitHub и укажите:

  • 📝 Чёткое описание проблемы
  • 🔄 Шаги для воспроизведения (что именно вы делали)
  • ✅ Что вы ожидали увидеть
  • ❌ Что произошло на самом деле
  • 💻 Ваше окружение (операционная система, версия Bun/Node)
  • 📸 Логи или скриншоты (если есть)

2. Предложить новую функцию (Feature Request)#

Есть идея? Создайте issue с описанием:

  • Что за функция
  • Какую проблему она решает
  • Ваши идеи по реализации (если есть)

3. Внести изменения в код (Pull Request)#

Шаг 1. Сделайте форк#

Fork (форк) — ваша личная копия репозитория на GitHub, в которую вы можете вносить изменения.

Нажмите кнопку Fork на странице репозитория HAPI.

Шаг 2. Склонируйте и настройте#

git clone https://github.com/ВАШ-ЛОГИН/hapi.git
cd hapi
bun install

Шаг 3. Запустите в режиме разработки#

bun run dev

Шаг 4. Внесите изменения#

Отредактируйте нужные файлы, ориентируясь на структуру проекта:

Что хотите изменить Где искать
Команды терминала cli/src/
Серверную логику hub/src/
Веб-интерфейс web/src/
Общий код shared/src/
Документацию docs/
Сайт website/src/

Шаг 5. Проверьте код#

bun run typecheck    # проверка типов
bun run test         # запуск тестов

Шаг 6. Отправьте PR#

git add .
git commit -m "Описание изменений"
git push origin ваша-ветка

Затем откройте PR на GitHub.

Правила для Pull Request#

❌ Никаких «мега-PR»#

Не отправляйте огромные изменения одним PR. Большие PR:

  • Сложно проверять
  • Легче пропустить ошибки
  • Труднее откатить при проблемах

Если хотите добавить большую функцию — сначала создайте issue и обсудите подход. Команда поможет разбить задачу на мелкие части.

✅ Хороший PR#

  • Решает одну конкретную задачу
  • Имеет понятное описание коммита
  • Содержит тесты (если применимо)
  • Обновляет документацию (если нужно)
  • Ссылается на связанный issue

⚠️ Политика AI-кода#

В HAPI действует особая политика: принимается только код, сгенерированный моделью GPT-5.2-codex.

PR с кодом от других AI-моделей (другие версии GPT, Claude, Gemini и т.д.) будут отклонены. Это сделано для единообразия и качества кода.

Если сомневаетесь — сначала создайте issue и спросите.

Пример: ваш первый вклад#

Допустим, вы нашли опечатку в документации:

# 1. Форкните и склонируйте
git clone https://github.com/ваш-логин/hapi.git
cd hapi

# 2. Создайте ветку
git checkout -b fix/typo-in-docs

# 3. Исправьте опечатку в нужном файле
# (отредактируйте файл в текстовом редакторе)

# 4. Закоммитьте и отправьте
git add .
git commit -m "docs: fix typo in installation guide"
git push origin fix/typo-in-docs

# 5. Откройте PR на GitHub

Это отличный способ начать — даже небольшие исправления очень ценятся!

Есть вопросы?#

Не стесняйтесь создать issue с вопросом. Команда HAPI дружелюбна и готова помочь.

Итоги урока#

  • HAPI — проект с открытым кодом, и ваш вклад приветствуется
  • Можно помочь тремя способами: сообщить об ошибке, предложить функцию, отправить PR
  • PR должны быть небольшими и сфокусированными — никаких мега-PR
  • AI-код принимается только от GPT-5.2-codex
  • Начните с малого: исправление опечатки — уже вклад!
  • Структура проекта: cli/, hub/, web/, shared/, website/, docs/