This is the source code of the is-a.dev reviewbot! The bot uses octokit.js as the library.
- Bun and Node.js
- A GitHub App subscribed to Pull Request, Workflow job and Workflow run events with the following permissions:
- Pull requests: Read & write
- Metadata: Read-only
- Actions: Read-only
- (For local development) A tunnel to expose your local server to the internet (e.g. smee, ngrok)
- Your GitHub App Webhook must be configured to receive events at a URL that is accessible from the internet.
- Clone this repository.
- Create a
.envfile similar to.env.exampleand set actual values. - Install dependencies with
bun. - Start the server with
bun run server. - Ensure your server is reachable from the internet.
- If you're using
smee, runsmee -u <smee_url> -t http://localhost:3000/api/webhook.
- If you're using
- Ensure your GitHub App includes at least one repository on its installations.
- Clone this repository.
- Add the private-key.pem file to the same directory.
- Create a
.envfile similar to.env.exampleand set actual values. - Run
sudo docker compose up -d
Any contribution to the is-a.dev reviewbot is welcomed! If you have any suggestions or fixes that you want to make feel free to make a pull request or make a GitHub issue! To get it resolved faster you can contact me.