Contributing
Thank you for your interest in contributing to our project! This guide will help you get started with contributing effectively.
Code of Conduct
We expect all contributors to follow our Code of Conduct. Please be respectful and constructive in all interactions.
Getting Started
- Fork the repository
- Clone your fork locally
- Create a new branch for your changes
- Make your changes
- Push to your fork
- Submit a pull request
Development Process
- Check existing issues or create a new one to discuss proposed changes
- Fork the repository and create your branch from
main
- Make your changes following our coding standards
- Add or update tests as needed
- Update documentation if required
- Ensure all tests pass locally
- Submit a pull request
Commit Guidelines
We follow Conventional Commits specification for commit messages. This leads to more readable messages that are easy to follow when looking through the project history.
Pull Request Process
- Ensure your pull request (PR) is focused on a single topic or issue.
- Reference any relevant issues in your PR description (e.g., "Closes #123").
- Provide a clear summary of your changes and the motivation behind them.
- Ensure your code passes all tests and adheres to our coding standards.
- Be responsive to feedback and make requested changes promptly.
- PRs will be reviewed by maintainers and may require approval from multiple reviewers before merging.
Issue Reporting
- Search existing issues before opening a new one to avoid duplicates.
- Provide a clear and descriptive title.
- Include steps to reproduce, expected behavior, and actual behavior.
- Attach logs, screenshots, or code snippets if helpful.
- Be respectful and constructive in your communication.
Coding Standards
- Follow the language-specific style guides (e.g., PEP8 for Python, ESLint for JavaScript).
- Write clear, maintainable, and well-documented code.
- Include type annotations and docstrings/comments where appropriate.
- Avoid introducing breaking changes unless discussed and approved.
Documentation
- Update documentation for any user-facing changes.
- Ensure code examples are up-to-date and accurate.
- Use clear and concise language.
- Follow the existing documentation structure and style.
Community Support
- Join discussions in our community channels (GitHub and Gitter).
- Help others by answering questions and reviewing PRs.
- Respect differing viewpoints and foster a welcoming environment.
Thank you for helping us improve this project! Your contributions make a difference.