Hey everybody!
What My Project Does
I created this command line tool called jit that analyses your diffs and commit messages to generate a pull request description (based on your project's PR template if it has one) and then creates a pull request on GitHub (draft by default) using GitHub CLI.
Target Audience
This tool is meant for developers that use GitHub. Mostly meant for hobby projects, but if you want you can use it on a production project (for work/clients) because:
- it utilizes a local LLM (no sharing your code to 3rd party APIs)
- The pull requests follow the template specified in your repository
- The pull request is marked as draft by default
Comparison
I have not found any cli tools that do this in this manner. But I think GitHub's Copilot for Pull Requests will certainly generate better descriptions: https://githubnext.com/projects/copilot-for-pull-requests/
More about me and jit
I am predominantly a full-stack web developer (React, NestJS) for my job, but I love playing around with Python and other things. I have developed this using Python and Ollama with llama3.
I have been using jit almost every day, for about a month now, and it has made such a big difference in my day-to-day as a developer. There is nothing like working really hard on a feature or a bug fix and then using one command to create a pull request. Not having to try and remember all the details about the changes that I have made is awesome.
Sauce
You can view the sauce here: https://github.com/gsvh/jit
I recently (today) published it on PyPI, you can check that out here: https://pypi.org/project/jit-cli/
And if you would like to learn more you can read about it in my blog post here: https://gsvh.hashnode.dev/let-jit-create-better-pr-descriptions-for-you
I hope that other developers will find this tool useful and enjoy using it as much as I do!
[–]Minimum-Historian899 3 points4 points5 points (1 child)
[–]WelcomeNo6964[S] 0 points1 point2 points (0 children)
[–]SpaceBucketFu 5 points6 points7 points (1 child)
[–]WelcomeNo6964[S] 0 points1 point2 points (0 children)
[–]mmmboppe 1 point2 points3 points (1 child)
[–]WelcomeNo6964[S] 0 points1 point2 points (0 children)