Thank you for considering contributing to OSM Data Extractor! 🎉
If you find a bug, please open an issue with:
- A clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Your environment (OS, Python version)
Feature suggestions are welcome! Please:
- Check if the feature has already been requested
- Clearly describe the use case
- Explain how it would benefit the project
To add support for a new country:
- Fork the repository
- Create a new extractor in
src/extractors/extract_[country].py - Update configuration in
config.py:# Add regions for the new country [COUNTRY]_REGIONS = [ 'Region1', 'Region2', ... ]
- Test thoroughly with a small region first
- Submit a pull request with:
- Clear description of changes
- Example output
- Any special considerations
- Follow PEP 8 guidelines
- Use meaningful variable names
- Add docstrings to functions and classes
- Keep functions focused and modular
Before submitting a PR:
# Run tests
python -m pytest tests/
# Test on a small dataset first
python run_pipeline.py# Clone your fork
git clone https://github.com/yourusername/OSM-Data-Extractor.git
cd OSM-Data-Extractor
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Create a new branch
git checkout -b feature/your-feature-name- Update the README.md if needed
- Add tests for new functionality
- Ensure all tests pass
- Update documentation
- Submit PR with clear description
Feel free to open an issue for any questions or clarifications!
Thank you for contributing! 🙌