Contributing
Contributions are welcome! Follow this guide to contribute to vlrdevapi.
Getting Started
Development Setup
Clone and install in development mode:
git clone https://github.com/vanshbordia/vlrdevapi.git
cd vlrdevapi
pip install -e .[dev]
This installs the library in editable mode with development dependencies.
Running Tests
Run All Tests
pytest tests/lib/
Run Specific Test File
pytest tests/lib/test_search.py -v
Run with Coverage
pytest tests/lib/ --cov=vlrdevapi
Code Quality
Linting
Check code style:
ruff check src/
Formatting
Format code:
ruff format src/
Contribution Guidelines
Before Submitting
Tests: All tests must pass
New Features: Add tests for new functionality
Documentation: Update relevant docs
Code Style: Follow existing patterns
Type Hints: Include type annotations
Pull Request Process
Fork the repository
Create a feature branch from main
Make your changes
Test your changes locally
Commit with clear messages
Push to your fork
Submit a pull request
Code Style Guidelines
Use type hints for all functions
Follow PEP 8 conventions
Write descriptive docstrings
Keep functions focused and small
Use meaningful variable names
Testing Guidelines
Write tests for all new features
Use fixtures for test data
Mock external dependencies
Test edge cases and error conditions
Documentation Guidelines
Update API docs for new functions
Add examples for new features
Keep documentation concise
Use proper RST formatting
Questions?
Open an issue on GitHub
Check existing issues and PRs
Review the codebase for examples
License
By contributing, you agree that your contributions will be licensed under the MIT License.