💁Contributing
Thank you for your interest in contributing to ProxmoxMCP! This document provides guidelines and instructions for contributing to the project.
📚 Complete Documentation - For detailed guides and API reference
Table of Contents
Code of Conduct
By participating in this project, you agree to abide by our Code of Conduct. Please be respectful and considerate of others when contributing to the project.
Getting Started
Fork the repository on GitHub
Clone your fork locally
Set up the development environment
Create a new branch for your changes
Make your changes
Submit a pull request
Development Environment
Prerequisites
Python 3.8 or higher
Docker (for containerized development)
Proxmox VE instance (for testing)
Setup
Clone the repository:
Set up git configuration for development:
The
example.gitconfig
includes development-friendly settings like:Python/JSON/Dockerfile diff patterns
Useful aliases (
git lg
,git st
,git sync
)Performance and security optimizations
Create a virtual environment:
Install development dependencies:
Configure your Proxmox connection:
Contribution Workflow
Check the issues for tasks to work on or create a new issue for your proposed change
Create a new branch from
main
:Make your changes
Add tests for your changes
Run the tests to ensure they pass:
Update documentation as needed
Commit your changes with a descriptive commit message:
Push your branch to your fork:
Create a pull request against the
main
branch of the original repository
Coding Standards
Follow PEP 8 style guidelines
Use type hints for function parameters and return values
Write docstrings for all functions, classes, and modules
Keep functions focused on a single responsibility
Use meaningful variable and function names
Add comments for complex logic
Code Formatting
We use the following tools for code formatting and linting:
You can run these tools with:
Testing
Write unit tests for all new functionality
Ensure all tests pass before submitting a pull request
Aim for high test coverage of your code
Include both positive and negative test cases
To run tests:
For coverage report:
Documentation
Update documentation for any changes to functionality
Document all public APIs
Include examples where appropriate
Keep the README up to date
Add docstrings to all functions, classes, and modules
Issue and Pull Request Process
Issues
Use the appropriate issue template
Provide clear and detailed information
Include steps to reproduce for bugs
Label issues appropriately
Pull Requests
Reference the related issue in your pull request
Provide a clear description of the changes
Update documentation as needed
Ensure all tests pass
Request review from maintainers
Security Vulnerabilities
If you discover a security vulnerability, please do NOT open an issue. Instead, email security@example.com with details. We take security issues seriously and will address them promptly.
Community
Join our discussions for questions and community support
Follow the project on GitHub to stay updated
Share your success stories and use cases
Thank you for contributing to ProxmoxMCP!
Last updated
Was this helpful?