Thank you for your interest in contributing! We welcome all contributions from bug reports to new features.
- Fork the repository
- Create a feature branch:
git checkout -b feature-name - Make your changes
- Run tests:
python scripts/run_tests.py - Submit a pull request
# Clone your fork
git clone https://github.com/gapilongo/SOC.git
cd lg-sotf
# Install dependencies
pip install -r requirements-dev.txt
# Setup pre-commit hooks
pre-commit install
# Run tests to verify setup
python -m pytest tests/- Follow PEP 8 style guidelines
- Add tests for new functionality
- Update documentation when needed
- Keep commits focused and atomic
- Write clear commit messages
We use automated tools to maintain code quality:
- Black for formatting
- isort for import sorting
- flake8 for linting
- mypy for type checking
Run before submitting:
pre-commit run --all-files- Ensure tests pass and code follows style guidelines
- Update documentation for new features
- Reference any related issues in your PR description
- Keep PRs focused on a single feature or bug fix
When reporting bugs, please include:
- Clear description of the issue
- Steps to reproduce
- Expected vs actual behavior
- Environment details
- Check existing issues
- Start a discussion
- Review our documentation
By contributing, you agree that your contributions will be licensed under the MIT License.