First off, thank you for considering contributing to PlanAI! It's people like you that make PlanAI such a great tool.
Before you start contributing, please install the pre-commit hook by running:
pre-commit install
This is required to ensure code quality and maintain consistent formatting across all contributions.
By participating in this project, you are expected to uphold our Code of Conduct.
- Ensure the bug was not already reported by searching on GitHub under Issues.
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
- Open a new issue with a clear title and detailed description of the suggested enhancement.
- Provide any relevant examples or use cases that support your suggestion.
- Fork the repo and create your branch from
main
. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- Issue that pull request!
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
- Reference issues and pull requests liberally after the first line
- Follow PEP 8.
- Use type hints where possible.
- Write docstrings for all public modules, functions, classes, and methods.
- Use Sphinx for documentation.
- Use reStructuredText for Sphinx documentation.
This section lists the labels we use to help us track and manage issues and pull requests.
bug
- Issues that are bugs.enhancement
- Issues that are feature requests.documentation
- Issues or pull requests related to documentation.good first issue
- Good for newcomers.
Thank you for contributing to PlanAI!