Self-host
When you choose to self-host, the responsibility for updates, maintenance, and merging future enhancements rests entirely with you.
We highly recommend the Cloud version, unless you have hard requirements to manage your own infrastructure.
Requirements
- NodeJS 20
- Postgres
- Redis
- GitHub App
Prepare the environment
Create a GitHub Application
Firstly, you’ll need to create a GitHub application.
Setup your GitHub app following the instructions below:
- Generate a Client Secret
- Callback Url: https://your-web-app.com/github/callback
- Uncheck “Expire user authorization tokens”
- Check “Request user authorization (OAuth) during installation”
- Webhook
- Check “Active”
- Webhook Url: https://your-api.com/github/callback
- SSL verification
- Check “Enable SSL verification”
- Generate a Private Key
Host API
Secondly, you’ll need to setup hosting for the API application.
Update the .env file
Make it production-ready.
Set your database credentials.
Set your Redis credentials.
Set your GitHub App credentials.
Host Web App
Lastly, you’ll need to host the frontend, the web application.
Update the .env file:
API
- Use
npm
to install dependencies. - Run
npm run build
to build the application. - Run
npm run start
to start the application.
Database migrations
Our API uses Prisma to communicate with the database.
Run npx prisma migrate deploy
to run migrations.
Monitoring
We currently support LogTail and Sentry for monitoring.
Update .env to enable: