Guide
Contributing Guide
Contribution guidelines and development setup
Contributing to AI Routing Lab
Thank you for your interest in contributing to AI Routing Lab!
Getting Started
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/ai-routing-lab.git - Create a branch:
git checkout -b feature/your-feature-name - Make your changes
- Test your changes
- Submit a pull request
Development Setup
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
pip install -r requirements-dev.txt
# Install package in development mode
pip install -e .
Code Style
- Follow PEP 8 style guide
- Use
blackfor code formatting - Use
flake8for linting - Use type hints where possible
# Format code
black .
# Check linting
flake8 .
# Type checking
mypy .
Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=. --cov-report=html
# Run specific test file
pytest tests/test_collectors.py
Pull Request Process
- Update README.md if needed
- Add tests for new features
- Ensure all tests pass
- Update documentation
- Submit PR with clear description
Research Contributions
For research contributions:
- Document methodology
- Include experiment results
- Provide reproducibility instructions
- Link to related papers/publications
Thank you for contributing!