51 lines
2.2 KiB
Markdown
51 lines
2.2 KiB
Markdown
# Участие в проекте
|
||
|
||
Спасибо за интерес к проекту Kaspi POS Automation! Мы приветствуем любой вклад.
|
||
|
||
## Как создать Issue
|
||
|
||
1. Убедитесь, что аналогичный issue ещё не создан.
|
||
2. Используйте соответствующий шаблон (Bug Report или Feature Request).
|
||
3. Опишите проблему или предложение максимально подробно.
|
||
|
||
## Как создать Pull Request
|
||
|
||
1. Сделайте fork репозитория.
|
||
2. Создайте ветку от `main`:
|
||
```bash
|
||
git checkout -b feature/my-feature
|
||
```
|
||
3. Внесите изменения и убедитесь, что:
|
||
- Код проходит линтинг: `npm run lint`
|
||
- Тесты проходят: `npm test`
|
||
4. Сделайте коммит с понятным сообщением (см. ниже).
|
||
5. Откройте Pull Request с описанием изменений.
|
||
|
||
## Стиль коммитов
|
||
|
||
Используйте [Conventional Commits](https://www.conventionalcommits.org/):
|
||
|
||
```
|
||
feat: добавить новый эндпоинт для возвратов
|
||
fix: исправить генерацию TOTP при смене часового пояса
|
||
docs: обновить README
|
||
chore: обновить зависимости
|
||
```
|
||
|
||
## Требования к коду
|
||
|
||
- **ES Modules** (`import`/`export`).
|
||
- Используйте `const` где возможно, стрелочные функции для колбэков.
|
||
- Обработка ошибок через `try/catch` с возвратом `{ error }` в JSON.
|
||
- Не коммитьте `.env`, `keypair.json`, `device.json` или `*.bak` файлы.
|
||
- Запускайте `npm run lint` и `npm run format` перед коммитом.
|
||
|
||
## Код-ревью
|
||
|
||
- Все PR проходят ревью перед мержем.
|
||
- Будьте открыты к обратной связи и готовы внести правки.
|
||
|
||
## Сообщение об уязвимостях
|
||
|
||
Если вы нашли уязвимость, **не создавайте публичный issue**. См. [SECURITY.md](./SECURITY.md).
|