# Contributing to Proxy-Core Спасибо за интерес к проекту! Мы рады любому вкладу. ## 🤝 Как внести вклад ### Сообщить об ошибке 1. Проверьте, что проблема еще не была описана в [Issues](https://github.com/houseassassin/proxy-core/issues) 2. Создайте новый Issue с подробным описанием: - Версия ОС - Версия скрипта - Шаги для воспроизведения - Ожидаемое поведение - Фактическое поведение - Логи ошибок ### Предложить улучшение 1. Создайте Issue с описанием предложения 2. Объясните, почему это улучшение будет полезно 3. Приведите примеры использования ### Отправить Pull Request 1. Fork репозитория 2. Создайте ветку для вашей функции (`git checkout -b feature/amazing-feature`) 3. Внесите изменения 4. Протестируйте на чистой системе 5. Commit изменений (`git commit -m 'Add amazing feature'`) 6. Push в ветку (`git push origin feature/amazing-feature`) 7. Откройте Pull Request ## 📝 Стандарты кода ### Bash скрипты - Используйте `set -euo pipefail` в начале скриптов - Добавляйте комментарии к сложным участкам - Используйте функции для повторяющегося кода - Проверяйте код с помощью `shellcheck` - Используйте понятные имена переменных ### Форматирование ```bash # Хорошо function install_package() { local package_name="$1" log "Installing $package_name..." apt-get install -y "$package_name" } # Плохо function inst() { apt-get install -y $1 } ``` ### Обработка ошибок ```bash # Всегда проверяйте результат выполнения if ! command -v docker &> /dev/null; then error "Docker not found" return 1 fi # Используйте trap для очистки trap cleanup EXIT ``` ## 🧪 Тестирование Перед отправкой PR протестируйте на: - Ubuntu 22.04 - Debian 12 - CentOS 9 (если возможно) Проверьте: - Установку с нуля - Обновление существующей установки - Удаление компонентов - Работу всех функций меню ## 📚 Документация При добавлении новых функций: - Обновите README.md - Добавьте примеры использования - Опишите требования - Добавьте раздел в Troubleshooting (если нужно) ## 🎨 Стиль коммитов Используйте понятные сообщения коммитов: ``` feat: добавлена поддержка Shadowsocks fix: исправлена ошибка установки Docker docs: обновлена документация по WireGuard refactor: улучшена функция генерации паролей test: добавлены тесты для SSL сертификатов ``` ## 🔍 Code Review Все PR проходят review. Будьте готовы: - Ответить на вопросы - Внести изменения по замечаниям - Обновить документацию ## 📜 Лицензия Отправляя PR, вы соглашаетесь с лицензией MIT проекта. ## 💬 Вопросы? - Создайте Issue - Напишите в Telegram: [@houseassassin](https://t.me/houseassassin) Спасибо за вклад в Proxy-Core! 🚀