Self-hosting
OpenReview has two parts:
- Web app: Next.js. It runs on Vercel, Docker or any Node.js 24 host.
- Backend: Convex. Use Convex Cloud, or the open-source Convex backend on your own infrastructure.
Repository files are stored as Convex file blobs. Metadata, symbols, the code graph and embeddings live in Convex tables.
Checklist
- Set the core configuration:
APP_URLidentically on the web app and the backend.SESSION_SECRET(32+ characters) andSERVICE_SECRETon both.CREDENTIAL_ENCRYPTION_KEY(32+ characters) on the backend, to encrypt provider and integration credentials. Back it up.
- Configure a model (
LLM_PROVIDER,LLM_API_KEY) and the inference budget. - Register your GitHub App or connect another provider.
- Optionally add:
- embeddings (
EMBEDDING_MODEL,EMBEDDING_API_KEY). - Slack and email (notifications).
- more sign-in methods (identity).
- embeddings (
- Decide on outbound advisory lookups: security checks query OSV.dev for changed dependency versions. Set
OSV_ENABLED=falseon the backend to stop those requests (pattern checks still run), or setOSV_API_URLto an internal OSV mirror. - Leave
BILLING_ENABLEDunset. Billing is for hosted cloud deployments only, and self-hosted installs have no quotas.
Docker
docker build -t openreview:local .
The deployment guide covers Docker Compose with a self-hosted Convex backend, backups and upgrades.