Thank you for your interest in contributing! This document provides guidelines for contributing to the project.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/sentinel.git - Create a branch:
git checkout -b feature/your-feature-name - Make your changes
- Test your changes
- Submit a pull request
# Clone the repository
git clone https://github.com/ds-horizon/sentinel.git
cd sentinel
# No dependencies needed - uses only Node.js built-ins
# Just ensure you have Node.js >= 18.0.0# Run comprehensive test suite (recommended)
npm test # Host + local source
# Docker testing (safe isolation)
npm run test:docker # Docker + local source
npm run test:docker:npm # Docker + npm package
# Quick smoke tests
npm run test:smoke
# Or directly from sample-test-repo/
./tests/test.sh # Host + local source
./tests/test.sh --docker # Docker + local source
./tests/test.sh --docker --npm # Docker + npm package- Use ES modules (
import/export) - Follow existing code style
- Add comments for complex logic
- Keep functions focused and small
- Update documentation if needed
- Ensure all tests pass
- Update CHANGELOG.md if applicable
- Submit PR with clear description
If you discover a security vulnerability, please report it by creating a private security advisory on GitHub instead of opening a public issue.
Open an issue for questions or discussions.