Contributing¶
Thank you for your interest in contributing to MCPOmni Connect! This project thrives on community contributions.
Quick Links¶
- Main Contributing Guide: See CONTRIBUTING.md in the project root for complete guidelines
- Issue Tracker: GitHub Issues
- Discussions: GitHub Discussions
Ways to Contribute¶
🐛 Bug Reports¶
Found a bug? Help us fix it:
- Check existing issues first
- Create a new issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, Python version, etc.)
💡 Feature Requests¶
Have an idea for improvement?
- Check discussions for similar ideas
- Open a new discussion or issue describing:
- The problem your feature would solve
- Proposed solution
- Alternative solutions considered
📝 Documentation¶
Help improve our documentation:
- Fix typos or unclear instructions
- Add examples or use cases
- Improve API documentation
- Translate documentation (future)
🔧 Code Contributions¶
Ready to code? Follow the development setup guide.
Documentation Contributions¶
Working with MkDocs¶
This documentation site uses MkDocs with Material theme:
# Install documentation dependencies
pip install -r docs/requirements.txt
# Serve documentation locally
mkdocs serve
# Build documentation
mkdocs build
Documentation Structure¶
docs/
├── index.md # Homepage
├── getting-started/ # Installation and quick start
├── configuration/ # Configuration guides
├── user-guide/ # Usage instructions
├── features/ # Feature deep-dives
├── advanced/ # Advanced topics
└── development/ # Development guides
Writing Guidelines¶
Documentation Style
- Use clear, concise language
- Include practical examples
- Add code snippets where helpful
- Use admonitions (tips, warnings, etc.) for important information
- Test all code examples before committing
Development Process¶
1. Fork and Clone¶
2. Set Up Development Environment¶
# Install UV (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install dependencies
uv sync
# Install pre-commit hooks
pre-commit install
3. Create Feature Branch¶
4. Make Changes¶
- Write code following the project style
- Add tests for new functionality
- Update documentation as needed
- Ensure all tests pass
5. Submit Pull Request¶
- Push your branch to your fork
- Create a pull request with:
- Clear description of changes
- Link to related issues
- Screenshots (if UI changes)
Code Standards¶
Python Code¶
- Follow PEP 8 style guidelines
- Use type hints where appropriate
- Write docstrings for public functions
- Add unit tests for new features
Documentation¶
- Use Markdown formatting
- Follow the existing structure
- Include code examples
- Test all examples before committing
Testing¶
Run Tests Locally¶
# Run all tests
pytest tests/ -v
# Run specific test file
pytest tests/test_specific.py -v
# Run with coverage
pytest tests/ --cov=src --cov-report=term-missing
Documentation Testing¶
Getting Help¶
Need help contributing?
- Technical Questions: GitHub Discussions
- Bug Reports: GitHub Issues
- Email: abiolaadedayo1993@gmail.com
Recognition¶
Contributors are recognized in:
- CHANGELOG.md for their contributions
- GitHub contributors page
- Special thanks in release notes
Thank you for helping make MCPOmni Connect better! 🚀