Contributing to HUD
July 14, 2026 ยท View on GitHub
We welcome contributions to the HUD SDK! This guide covers how to get started.
Quick Start
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/hud-python(the repo keeps its historical name; the PyPI package ishud) - Install uv and set up dev dependencies:
cd hud-python uv sync --extra dev
Development Workflow
Git Hooks
Enable the shared pre-push hook (runs ruff, pyright, pytest before each push):
git config core.hooksPath .githooks
Running Tests
uv run pytest -q
Tests run on Python 3.11 and 3.12 in CI.
Code Quality
uv run ruff format . --check # Formatting
uv run ruff check . # Linting
uv run pyright # Type checking
Code Style
- Python 3.11+ features are allowed
- Type hints required for public APIs
- Line length limit: 100 characters
- Follow existing patterns in the codebase
Pull Request Process
- Branch naming:
feature/descriptionorfix/issue-number - Commits: Use clear, descriptive messages
- Tests: All CI checks must pass (ruff, pyright, pytest)
- Review: Address feedback promptly
Need Help?
- Check existing issues and PRs
- Look at similar code in the repository
- Ask questions in your PR
By contributing, you agree that your contributions will be licensed under the MIT License.