Spaces:
Running on CPU Upgrade
Running on CPU Upgrade
Contributing to Oral Health Policy Pulse
Thank you for your interest in contributing to the Oral Health Policy Pulse project!
How to Contribute
Reporting Bugs
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, etc.)
Suggesting Features
Feature requests are welcome! Please:
- Check if the feature has already been requested
- Clearly describe the feature and its use case
- Explain how it would benefit advocacy groups
Code Contributions
Fork the repository
Create a feature branch
git checkout -b feature/your-feature-nameMake your changes
- Follow the existing code style
- Add tests for new functionality
- Update documentation as needed
Run tests
pytest black . ruff check .Commit your changes
git commit -m "Add feature: description"Push and create a pull request
git push origin feature/your-feature-name
Code Style
- Follow PEP 8 guidelines
- Use type hints
- Write docstrings for all public functions
- Keep functions focused and single-purpose
- Use meaningful variable names
Code of Conduct
This project values respectful, inclusive collaboration. We align with the principles of:
- Open States Code of Conduct: https://docs.openstates.org/code-of-conduct/
- Be respectful and professional
- Welcome diverse perspectives
- Focus on what's best for the community
- Show empathy towards other contributors
Contributing to Upstream Projects
We use data and patterns from several open source civic tech projects. When contributing scraper patterns or improvements back to upstream projects like OpenStates, please:
- Follow their standards: https://github.com/openstates/openstates-scrapers
- Reference their documentation: https://docs.openstates.org/contributing/local-database/
- Respect their Code of Conduct: https://docs.openstates.org/code-of-conduct/
- Test locally before submitting pull requests
- Document data sources used in scraper development
Testing
All new features should include tests. Run the test suite with:
pytest tests/ -v
Documentation
Update relevant documentation when:
- Adding new features
- Changing API endpoints
- Modifying configuration options
- Adding new dependencies
Questions?
Open an issue or reach out to the maintainers.
Thank you for helping improve oral health advocacy! 🦷