First off, thank you for considering contributing to template-python! It's people like you that make this project great.
By participating in this project, you are expected to uphold our Code of Conduct. Please report any unacceptable behavior to the project team.
Important
Please do not report security vulnerabilities through public GitHub issues.
If you discover a security issue, please refer to our Security Policy for instructions on how to safely report it.
There are many ways to contribute to template-python, and not all of them involve writing code:
- Reporting Bugs: Help us improve by submitting detailed bug reports via our issue tracker.
- Suggesting Features: Propose new features or enhancements that could benefit the project.
- Improving Documentation: Fix typos, add examples, or write new guides.
- Writing Code: Fix bugs, implement features, or improve performance.
- Helping Others: Answer questions in Discussions or issue comments.
For general questions and help, please see SUPPORT.md.
If you are contributing code, please follow these structured steps:
Before you start coding, please refer to our Development Guide for detailed instructions on:
- Setting up your local environment
- Installing dependencies
- Running the test suite
- Code formatting and linting standards
- Look for issues tagged with
good first issueorhelp wantedif you are a new contributor. - If you plan to work on a major feature, please open an issue or discussion first to talk it over with the maintainers.
- Fork the Repository: Fork the
template-pythonrepository to your GitHub account. - Create a Branch: Create a new branch from
mainfor your work (e.g.,git checkout -b feat/add-new-feature). - Write Code: Implement your changes, adhering to the project's coding standards.
- Write Tests: Add unit tests or integration tests for your changes to ensure stability.
- Run Tests: Ensure all tests and linters pass locally before committing.
- Write clear, concise commit messages.
- We recommend using Conventional Commits (e.g.,
feat: add support for X,fix: resolve issue with Y). - If you are adding a new file, please include the appropriate Apache 2.0 copyright and license header at the top.
- Push your branch:
git push origin your-branch-name. - Open a Pull Request: Open a PR against the
mainbranch of the upstream repository. - Fill out the PR Template: Provide a clear description of your changes, link to any relevant issues (e.g.,
Closes #123), and complete any required checklists. - Pass CI: Ensure all GitHub Actions CI checks pass.
- Review: Address any feedback from the maintainers. Once approved and checks pass, a maintainer will merge your PR.
By contributing to template-python, you agree that your contributions will be licensed under its Apache 2.0 License.