Prerequisites
| Tool | Version | Purpose |
|---|---|---|
| Node.js | 20+ | Runtime for all services |
| pnpm | 9+ | Package manager |
| Docker | 24+ | PostgreSQL and Redis containers |
| Git | 2.40+ | Source control |
1. Clone the repository
2. Start the database
Kommit uses PostgreSQL 16 with the pgvector extension for vector embeddings.5433 with:
- User:
kommit - Password:
kommit_dev - Database:
kommit - pgvector extension pre-installed
3. Start Redis
The worker service requires Redis for job queues.4. Configure environment variables
Each service needs its own.env file. Copy the examples and fill in the required values.
- kommit-api
- kommit-frontend
- kommit-worker
- kommit-parser
5. Install dependencies
From the repository root:6. Set up the database schema
7. Start the services
Open four terminal windows (or use a tool liketmux):
8. Verify everything works
Open the frontend
Navigate to http://localhost:3000 and create an account.
Service ports summary
| Service | Port | Health endpoint |
|---|---|---|
| kommit-frontend | 3000 | — |
| kommit-api | 3319 | /health |
| kommit-parser | 4100 | /health |
| kommit-worker | 4200 | /health |
| PostgreSQL | 5433 | — |
| Redis | 6379 | — |
Optional: GitHub App integration
To enable GitHub repository imports and webhooks, configure a GitHub App:- Create a GitHub App at github.com/settings/apps/new
- Set the webhook URL to your API’s public URL
- Grant repository read permissions
- Add these to your
.envfiles:
Next steps
Architecture overview
Understand how Kommit’s services fit together.
API reference
Explore the REST API endpoints.