Files
2026-hypn0-site/CONTRIBUTING.md
T

51 lines
3.4 KiB
Markdown

# Руководство по участию в проекте (CONTRIBUTING)
Благодарим за интерес к развитию проекта **Hypn0**! Мы приветствуем любые улучшения: исправление ошибок, новые генеративные алгоритмы и формы, оптимизацию производительности и дополнение документации.
---
## 1. Сообщение об ошибках и предложения (Issues)
Нам известно, что проект не идеален. Перед созданием нового issue:
1. Проверьте существующие закрытые и открытые задачи, чтобы избежать дублирования.
2. При сообщении об ошибке укажите:
- Шаги для воспроизведения проблемы.
- Ожидаемое и фактическое поведение.
- Версию окружения (Python, ОС, браузер).
3. При предложении новой функциональности опишите ее практическую ценность и сценарии использования.
---
## 2. Разработка и стандарты кода
### Окружение
- **Стек:** Python 3.14+, Django 6.0+, Poetry.
- **Фронтенд:** Tailwind CSS, Alpine.js, HTMX (сборка описана в `frontend-assembly/README.md`).
### Стандарты кодовой базы
- **Стиль Python:** PEP8, Black, isort. Отступы 4 пробела, длина строки до 180-200 символов.
- **Комментарии:** На русском языке, имена функций, классов и переменных — на английском.
- **Эмодзи:** Избегайте использования эмодзи в кодовой базе, коммитах и документации.
- **Тестирование:** Все изменения в логике бэкенда должны сопровождаться или покрываться тестами:
```bash
python hypn0/manage.py test hypn0_site
```
---
## 3. Процесс подачи изменений (Pull Requests / Merge Requests)
1. Сделайте форк репозитория и создайте отдельную ветку для задачи: `git checkout -b feature/awesome-shape` или `git checkout -b fix/scoring-gravity`.
2. Внесите изменения, соблюдая стиль проекта.
3. Убедитесь, что все автоматические тесты проходят успешно.
4. Оформите краткий и понятный коммит.
5. Откройте Pull Request с описанием сути изменений и ссылкой на связанный issue (если есть).
---
## 4. Лицензирование контрибуций
Отправляя код или документацию в репозиторий Hypn0, вы соглашаетесь с тем, что ваш вклад будет лицензирован на условиях общей лицензии проекта:
- Исходный код: **PolyForm Noncommercial License 1.0.0**.
- Сгенерированная графика: **Creative Commons Zero 1.0 Universal (CC0 1.0)**.