Урок 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/