2024-11-25 16:25:58 +03:00
|
|
|
# 🤝 Contributing Guide
|
|
|
|
|
|
|
|
|
|
We welcome contributions to the HA Text AI project! This document will help you contribute to the project's development.
|
|
|
|
|
|
|
|
|
|
## 🌟 How to Contribute
|
|
|
|
|
|
|
|
|
|
### 1. Preparation
|
|
|
|
|
|
|
|
|
|
1. Fork the Repository
|
|
|
|
|
- Go to the repository page on GitHub
|
|
|
|
|
- Click the "Fork" button in the top right corner
|
|
|
|
|
|
|
|
|
|
2. Clone Your Fork
|
|
|
|
|
```bash
|
|
|
|
|
git clone https://github.com/YOUR_USERNAME/ha-text-ai.git
|
|
|
|
|
cd ha-text-ai
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
3. Set Up Remote Repositories
|
|
|
|
|
```bash
|
|
|
|
|
git remote add upstream https://github.com/smkrv/ha-text-ai.git
|
|
|
|
|
```
|
|
|
|
|
|
2024-11-29 00:01:27 +03:00
|
|
|
### 2. Creating a Development Branch
|
2024-11-25 16:25:58 +03:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# Update the main branch
|
|
|
|
|
git checkout main
|
|
|
|
|
git pull upstream main
|
|
|
|
|
|
|
|
|
|
# Create a new branch for your feature
|
|
|
|
|
git checkout -b feature/short-description-of-changes
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 3. Development
|
|
|
|
|
|
|
|
|
|
- Follow the project's coding standards
|
|
|
|
|
- Write clean and understandable code
|
|
|
|
|
- Add comments when necessary
|
|
|
|
|
- Create unit tests for new functionality
|
|
|
|
|
|
|
|
|
|
### 4. Committing Changes
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# Add modified files
|
|
|
|
|
git add .
|
|
|
|
|
|
|
|
|
|
# Create a meaningful commit
|
|
|
|
|
git commit -m "Feat: Add [short feature description]"
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 5. Commit Message Style
|
|
|
|
|
|
|
|
|
|
Use the following prefixes:
|
|
|
|
|
- `Feat:` - new feature
|
|
|
|
|
- `Fix:` - bug fixes
|
|
|
|
|
- `Docs:` - documentation updates
|
|
|
|
|
- `Style:` - formatting changes
|
|
|
|
|
- `Refactor:` - code refactoring
|
|
|
|
|
- `Test:` - adding tests
|
|
|
|
|
- `Chore:` - project maintenance
|
|
|
|
|
|
|
|
|
|
### 6. Pushing Changes
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# Push changes to your fork
|
|
|
|
|
git push origin feature/short-description-of-changes
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 7. Creating a Pull Request (PR)
|
|
|
|
|
|
|
|
|
|
1. Go to your fork on GitHub
|
|
|
|
|
2. Click "New Pull Request"
|
|
|
|
|
3. Select the base branch `main` of the original repository
|
|
|
|
|
4. Fill out the PR description:
|
|
|
|
|
- Brief description of changes
|
|
|
|
|
- Motivation for changes
|
|
|
|
|
- Screenshots (if applicable)
|
|
|
|
|
|
|
|
|
|
### 8. Review Process
|
|
|
|
|
|
|
|
|
|
- Project maintainers will review your PR
|
|
|
|
|
- There may be comments and requests for changes
|
|
|
|
|
- After approval, the PR will be merged
|
|
|
|
|
|
|
|
|
|
## 🛠 Code Requirements
|
|
|
|
|
|
|
|
|
|
- Follow PEP 8 for Python
|
|
|
|
|
- Write clear and self-documenting code
|
|
|
|
|
- Add type hints
|
|
|
|
|
- Cover code with tests
|
|
|
|
|
|
|
|
|
|
## 🐛 Found a Bug?
|
|
|
|
|
|
|
|
|
|
1. Check existing Issues
|
|
|
|
|
2. Create a new Issue with:
|
|
|
|
|
- Bug description
|
|
|
|
|
- Reproduction steps
|
|
|
|
|
- Home Assistant version
|
|
|
|
|
- Plugin version
|
|
|
|
|
|
|
|
|
|
## 📜 License
|
|
|
|
|
|
|
|
|
|
By contributing to the project, you agree to the [project's license](LICENSE).
|
|
|
|
|
|
|
|
|
|
## 🤔 Questions?
|
|
|
|
|
|
|
|
|
|
If you have any questions, create an Issue or contact the project maintainers.
|
|
|
|
|
|
|
|
|
|
**Thank you for your contribution!** 🎉
|