51 lines
3.4 KiB
Markdown
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)**.
|