Thank you for your interest in contributing to this project! This document provides guidelines for contributions.
-
Clone the repository:
git clone https://github.com/warrenrees/pyvidaa.git cd hisense-tv -
Create a virtual environment:
python3 -m venv venv source venv/bin/activate # Linux/macOS # or: venv\Scripts\activate # Windows
-
Install dependencies:
pip install -r requirements.txt pip install -e . # Install in editable mode
Currently, this project does not have automated tests. Contributions adding tests are welcome!
- Follow PEP 8 style guidelines
- Use type hints for function parameters and return values
- Include docstrings for all public functions and classes
- Use
logginginstead ofprint()statements in library code
Use type hints compatible with Python 3.8+:
from typing import Dict, List, Optional
def my_function(param: str, items: List[str]) -> Optional[Dict[str, Any]]:
...Use Google-style docstrings:
def my_function(param: str) -> bool:
"""Brief description of function.
Args:
param: Description of parameter.
Returns:
Description of return value.
Raises:
ValueError: When param is invalid.
"""- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Make your changes
- Commit with descriptive messages
- Push to your fork
- Open a Pull Request
- Use clear, descriptive commit messages
- Start with a verb in present tense (e.g., "Add", "Fix", "Update")
- Reference issues when applicable (e.g., "Fix #123")
Example:
Add support for new TV model authentication
- Implement protocol version 3300 detection
- Add fallback for legacy authentication
- Update documentation
When reporting bugs, please include:
- Python version (
python --version) - Operating system
- TV model (if known)
- Steps to reproduce the issue
- Error messages or logs
- Expected vs actual behavior
Feature requests are welcome! Please describe:
- The use case for the feature
- How it should work
- Any implementation suggestions
If you discover new protocol details through packet analysis or APK decompilation, please document them in VIDAA_PROTOCOL_ANALYSIS.md.
By contributing, you agree that your contributions will be licensed under the MIT License.