mullvad-servers-ping-tester
Version:
Инструмент для тестирования пинга серверов Mullvad VPN с расширенной аналитикой
93 lines (67 loc) • 4.7 kB
Markdown
# Руководство по участию в проекте
Спасибо за интерес к проекту Mullvad Server Ping Tester! Этот документ содержит информацию о том, как вы можете внести свой вклад в развитие проекта.
## Процесс разработки
1. Форкните репозиторий
2. Создайте ветку для вашей функциональности (`git checkout -b feature/amazing-feature`)
3. Внесите изменения в код
4. Убедитесь, что код проходит линтинг и тесты
5. Закоммитьте изменения (`git commit -m 'Добавлена новая функциональность'`)
6. Отправьте изменения в ваш форк (`git push origin feature/amazing-feature`)
7. Создайте Pull Request в основной репозиторий
## Настройка окружения разработки
```bash
# Клонирование репозитория
git clone https://github.com/yourusername/mullvad-servers-ping-results
cd mullvad-servers-ping-results
# Установка зависимостей
npm install
# Запуск в режиме разработки
npm run dev
```
## Тестирование
Перед отправкой Pull Request убедитесь, что ваш код проходит все тесты:
```bash
# Запуск тестов
npm test
# Проверка линтером
npm run lint
```
## Структура проекта
```
mullvad-servers-ping-results/
├── src/
│ ├── config.js # Настройки конфигурации
│ ├── index.js # Точка входа в приложение
│ ├── serverFetcher.js # Получение списка серверов из API
│ ├── pingService.js # Обработка пингов серверов
│ ├── outputGenerator.js # Генерация различных форматов вывода
│ ├── webServer.js # Веб-сервер для просмотра результатов
│ └── historyAnalyzer.js # Анализ исторических данных
├── tests/
│ └── basic.test.js # Базовые тесты
├── package.json
└── README.md
```
## Стиль кода
Проект использует ESLint для поддержания единого стиля кода. Основные правила:
- Отступы: 4 пробела
- Кавычки: одинарные
- Точка с запятой: обязательна
- Максимальная длина строки: 100 символов
- Стиль переноса строк: unix
## Добавление новых функций
При добавлении новых функций, пожалуйста, следуйте этим рекомендациям:
1. Обновите README.md с описанием новой функциональности
2. Добавьте тесты для новой функциональности
3. Обновите документацию, если необходимо
4. Следуйте существующему стилю кода
## Сообщения о проблемах
Если вы нашли ошибку или у вас есть предложение по улучшению, пожалуйста, создайте Issue в репозитории. При создании Issue, пожалуйста, включите:
- Подробное описание проблемы или предложения
- Шаги для воспроизведения проблемы (если применимо)
- Информацию о вашей системе (ОС, версия Node.js)
- Скриншоты (если применимо)
## Запросы на добавление функциональности
Если вы хотите предложить новую функциональность, пожалуйста, сначала обсудите ее, создав Issue. Это поможет избежать дублирования работы и обеспечит соответствие функциональности целям проекта.
## Лицензия
Внося свой вклад в проект, вы соглашаетесь с тем, что ваш код будет распространяться под лицензией MIT.