Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/darthsalad/pr-mate
pr-mate is a GitHub App designed to enhance your pull request reviews.
https://github.com/darthsalad/pr-mate
github-app open-ai piston probot typescript
Last synced: 4 days ago
JSON representation
pr-mate is a GitHub App designed to enhance your pull request reviews.
- Host: GitHub
- URL: https://github.com/darthsalad/pr-mate
- Owner: darthsalad
- License: isc
- Created: 2023-08-31T07:49:36.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-08T14:16:54.000Z (about 1 year ago)
- Last Synced: 2024-11-01T05:06:58.162Z (about 2 months ago)
- Topics: github-app, open-ai, piston, probot, typescript
- Language: TypeScript
- Homepage:
- Size: 6.58 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# pr-mate
> A GitHub App built with [Probot](https://github.com/probot/probot)## Description
`pr-mate` is a GitHub App designed to enhance your pull request experience by providing real-time code execution and explanation. It listens to pull request creation events and responds with comments based on specific commands.## Features
- ### Code Execution:
The app can execute code in a variety of languages using the Piston API. The output is then posted as a comment on the pull request.
- ### Code Explanation:
The app can provide a detailed explanation of the code using the OpenAI API. The explanation is then posted as a comment on the pull request.## Usage
In a pull request, type the following commands in a comment:- `/execute ` Replace with the programming language your code is written in. It gives the output of the code that the comment is based on.
- `/explain` It gives the explanation of the code the comment is based on.## Setup
- ### Clone the repo:
`git clone https://github.com/darthsalad/pr-mate.git`
- `cd pr-mate`
- ### Environment Variables:
Setup the environment variables as described in the [this file](./.env.example) section. (Most of the fields are populated by following the initial steps to setup the Probot app)
- ### Run the app
- `yarn install` to install the dependencies
- `yarn build` to build the app
- `yarn start` to start the app## Screenshots
- ### `/execute `
![Code Execution](./assets/execute-command.png)
- ### `/explain`
![Code Explanation](./assets/explain-command.png)## Working Demo
(In case of video not loading, you can watch it here: [link](https://drive.google.com/file/d/1S5vkE4KYedRFOejFu82O8-HcrIlg3m-B/view?usp=sharing))https://github.com/darthsalad/codemate-task/assets/75924053/16aef419-e82e-409a-b954-201d65c7b2ad
## Report
You can read the project report [here](./REPORT.md)## References
- [GitHub REST API](https://docs.github.com/en/rest)
- [Piston API](https://piston.readthedocs.io/en/latest/api-v2/)
- [OpenAI API](https://beta.openai.com/docs/introduction)## Author
- [darthsalad](https://github.com/darthsalad)## Contributing
If you have suggestions for how `pr-mate` could be improved, or want to report a bug, open an issue! We'd love all and any contributions.
For more, check out the [Contributing Guide](CONTRIBUTING.md).
## License
[ISC](LICENSE) © 2023 darthsalad