Thanks for your interest in contributing to auto_dev! Please take a moment to review this document before submitting a pull request.
If you want to contribute but aren't sure where to start, you can create a new discussion or open an issue.
This guide is intended to help you get started with contributing. By following these steps, you will understand the development process and workflow.
- Fork the repository
- Install Python and Poetry
- Install dependencies
- Build the project
- Write documentation
- Submit a pull request
- That's it!
To start contributing to the project, create a fork and clone it to your machine using git clone.
Or, use the GitHub CLI to create a fork and clone it in one command:
gh repo fork 8ball030/auto_dev --cloneauto_dev uses Poetry for dependency management. You need to install Python 3.10 or higher and Poetry < 2.0.
You can run the following commands in your terminal to check your local Python and Poetry versions:
python --version
poetry --versionIf the versions are not correct or you don't have Python or Poetry installed:
- Install Python from the official website or using pyenv
- Install Poetry
In the root directory, run the following command to install the project's dependencies:
poetry installIn the root directory, run the build command:
pip install -e .When adding new features or fixing bugs, it's important to add test cases in /tests to cover any new or updated behavior.
Before pushing your changes, make sure to run the following quality checks:
# Format code
make fmt
# Run linting checks
make lint
# Run tests
make test
# Update documentation
make docsThese commands will ensure your code:
- Follows the project's formatting standards
- Passes all linting rules
- Successfully runs all tests
Running these checks locally before pushing will help catch issues early and speed up the review process.
auto_dev uses MkDocs with Material theme for the documentation website. To start the docs website in dev mode, run:
poetry run mkdocs serveWhen you're ready to submit a pull request, follow these naming conventions:
- Pull request titles use the imperative mood (e.g.,
Add something,Fix something). - Commit messages should be clear and descriptive.
When you submit a pull request, GitHub Actions will automatically lint, build, and test your changes. If you see an ❌, it's most likely a problem with your code. Inspect the logs through the GitHub Actions UI to find the cause.
If you still have questions, please create a new issue.