CONTRIBUTING.mdโข2.99 kB
# Contributing to POEditor MCP
Thank you for your interest in contributing to POEditor MCP! This document provides guidelines for contributing to the project.
## ๐ค How to Contribute
### 1. Fork and Clone
```bash
# Fork the repository on GitHub, then:
git clone https://github.com/your-username/poeditor-mcp.git
cd poeditor-mcp
git remote add upstream https://github.com/r-pedraza/poeditor-mcp.git
```
### 2. Set Up Development Environment
```bash
# Install dependencies
pip install -r requirements.txt
# Run setup
python setup.py
# Test the installation
python control_center.py test
```
### 3. Create a Feature Branch
```bash
git checkout develop
git pull upstream develop
git checkout -b feature/your-feature-name
```
### 4. Make Changes
- Write clean, documented code
- Follow existing code style
- Add tests for new functionality
- Update documentation as needed
### 5. Test Your Changes
```bash
# Run tests
python control_center.py test
# Test specific functionality
python test_connection.py
```
### 6. Commit and Push
```bash
git add .
git commit -m "โจ Add your feature description"
git push origin feature/your-feature-name
```
### 7. Create Pull Request
- Create a pull request from your feature branch to the `develop` branch
- Provide a clear description of changes
- Reference any related issues
## ๐ Development Guidelines
### Code Style
- Follow PEP 8 for Python code
- Use meaningful variable and function names
- Add docstrings to functions and classes
- Keep functions small and focused
### Commit Messages
Use conventional commit format:
```
type(scope): description
[optional body]
[optional footer]
```
Types:
- `feat`: New features
- `fix`: Bug fixes
- `docs`: Documentation
- `style`: Formatting
- `refactor`: Code restructuring
- `test`: Adding tests
- `chore`: Maintenance
### Testing
- Test new features thoroughly
- Ensure existing tests still pass
- Add tests for bug fixes
- Test with different POEditor configurations
## ๐ Reporting Issues
When reporting issues:
1. Use the issue template
2. Provide clear reproduction steps
3. Include error logs from `logs/` directory
4. Specify your environment (OS, Python version, etc.)
## ๐ก Suggesting Features
For feature suggestions:
1. Check existing issues and discussions
2. Provide a clear use case
3. Explain how it benefits users
4. Consider implementation complexity
## ๐ Documentation
Help improve documentation by:
- Fixing typos and unclear sections
- Adding examples and use cases
- Translating to other languages
- Creating tutorials and guides
## ๐ Pull Request Process
1. Ensure your code follows the style guidelines
2. Update documentation for any new features
3. Add or update tests as appropriate
4. Ensure all tests pass
5. Update CHANGELOG.md with your changes
6. Request review from maintainers
## โ Questions?
- Open a discussion on GitHub
- Check existing documentation
- Review closed issues for similar questions
Thank you for contributing! ๐