Contributing to InSAR Norway Change Detection
Thank you for your interest in contributing to the InSAR Norway Change Detection project! This guide outlines how you can help improve the toolkit.
Ways to Contribute
Bug Reports
Found an issue? Help us improve by reporting bugs:
- Check existing issues to avoid duplicates
- Use the issue template when creating new reports
- Include system information: OS, Python version, environment details
- Provide reproducible examples when possible
Documentation
Help make the toolkit more accessible:
- Fix typos or unclear instructions
- Add examples for common use cases
- Improve command explanations
- Translate content (when applicable)
Code Contributions
Getting Started
Development Workflow
- Fork the repository on GitHub
- Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes following the coding standards
- Test your changes using the existing test suite
- Update documentation if needed
- Submit a pull request with a clear description
Coding Standards
- Follow PEP 8 for Python code style
- Add docstrings for new functions and classes
- Include type hints where appropriate
- Write tests for new functionality
- Keep functions focused and well-documented
Testing
Help ensure reliability:
- Run existing tests: Tests are executed via GitHub Actions
- Add test cases for new features
- Test on different systems if possible
- Validate with real data when contributing algorithms
Algorithm Improvements
Contribute to the change detection algorithms:
- Optimize performance for large datasets
- Improve accuracy of detection methods
- Add new algorithms with proper documentation
- Enhance spatial analysis capabilities
Documentation Contributions
Local Documentation Development
| Work on documentation locally | |
|---|---|
Visit http://127.0.0.1:8000 to preview changes.
Documentation Structure
| Text Only | |
|---|---|
Pull Request Guidelines
Before Submitting
- [ ] Test your changes locally
- [ ] Update documentation if needed
- [ ] Follow coding standards
- [ ] Write clear commit messages
Pull Request Template
Getting Help
Communication Channels
- GitHub Issues: Bug reports and feature requests
- GitHub Discussions: General questions and ideas
- Pull Request Reviews: Code-specific feedback
Development Resources
- MkDocs: Documentation framework (mkdocs.org)
- Material Theme: UI components (squidfunk.github.io)
- InSAR Norway API: Data source (insar.ngu.no)
Recognition
All contributors are recognized in our project documentation. Significant contributions may be highlighted in release notes.
Ready to contribute? Check out our open issues for good first contributions!