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