We welcome contributions to the OpenLabel Validator project! This document provides guidelines for contributing.
- Fork the repository on GitHub
- Clone your fork locally:
git clone https://github.com/your-username/openlabel-validator.git cd openlabel-validator - Create a 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 for your feature or bug fix:
git checkout -b feature/your-feature-name
- Make your changes
- Run tests to ensure everything works:
python -m pytest tests/
- Test your changes manually:
python validate_openlabel.py examples/valid_example.json
- Commit your changes:
git add . git commit -m "Add your descriptive commit message"
- Push to your fork:
git push origin feature/your-feature-name
- Create a Pull Request on GitHub
- Follow PEP 8 style guidelines
- Add type hints where appropriate
- Include docstrings for new functions and classes
- Keep functions focused and small
- Use meaningful variable and function names
- Add tests for new functionality
- Ensure all existing tests pass
- Test with different Python versions if possible
- Test with various OpenLabel file formats
- Additional validation features
- Performance improvements
- Better error messages
- Documentation improvements
- Additional output formats (JSON, XML)
- Integration with CI/CD systems
- Support for OpenLabel schema versions
When reporting issues, please include:
- Python version
- Operating system
- Steps to reproduce the issue
- Sample files that demonstrate the issue (if applicable)
- Full error messages
Feel free to open an issue for questions or start a discussion in the repository.
Thank you for contributing!