Getting started
Configuration
Detailed reference for environment variables, object storage, email gateways, and AI model parameters.
OutRiskAI relies on centralized configuration managed via .env files and environment settings. This guide covers all configurable services and parameters.
Never check production .env files into source control. Store secrets in secure vault systems or hosting environment variables.
Complete Environment Variable Reference
Core Application Variables
| Variable | Type | Default | Description |
|---|---|---|---|
NEXT_PUBLIC_APP_NAME | String | "OutRiskAI" | Name rendered in web headers and emails |
NEXT_PUBLIC_APP_URL | URL | "http://localhost:3000" | Canonical public URL of the application |
NODE_ENV | String | "development" | Environment mode (development, production, test) |
Database & Caching
| Variable | Required | Description |
|---|---|---|
DATABASE_URL | Yes | PostgreSQL connection string (postgresql://user:pass@host:5432/dbname) |
REDIS_URL | Optional | Redis connection string for background queue caching |
AI Services (gemini-2.5-flash)
| Variable | Required | Description |
|---|---|---|
GOOGLE_API_KEY | Yes | Google Gemini API key for clause extraction and Risk AI Assistant |
NEXT_API_KEY | Yes | Internal secret key for inter-service background recovery jobs |
Document Storage (S3 / DigitalOcean Spaces)
When users upload PDF agreements, original binary files are stored in S3-compatible object storage:
DO_SPACES_ACCESS_KEY="your-access-key"
DO_SPACES_SECRET_KEY="your-secret-key"
DO_SPACES_ENDPOINT="https://nyc3.digitaloceanspaces.com"
DO_SPACES_NAME="outriskai-contracts"Email Notification Settings (SMTP / SendGrid)
SMTP_HOST="smtp.sendgrid.net"
SMTP_PORT=587
SMTP_USER="apikey"
SMTP_PASSWORD="your-sendgrid-api-key"
SMTP_FROM="OutRiskAI <noreply@yourdomain.com>"Production Deployment Checklist
Before going live in production:
- Enforce HTTPS: Set
NEXTAUTH_URLto anhttps://domain. - Run Database Migrations: Execute
pnpm prisma migrate deploy. - Configure Cron Jobs: Schedule background recovery cron jobs (
/api/internal/public-api/jobs) every 5 minutes. - Enable Rate Limits: Verify PostgreSQL rate limit tables are active.