-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
93 lines (78 loc) · 4.22 KB
/
Copy path.env.example
File metadata and controls
93 lines (78 loc) · 4.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# =============================================================================
# RetroLoop — Environment Variables
# =============================================================================
# Copy this file to .env and fill in the values for your environment:
# cp .env.example .env
# -----------------------------------------------------------------------------
# Database (Docker Compose + Backend)
# -----------------------------------------------------------------------------
POSTGRES_USER=retro
POSTGRES_PASSWORD=retro_dev_password
POSTGRES_DB=retro
# POSTGRES_HOST=localhost
# POSTGRES_PORT=5432
# Database Connection Pool Configuration (optional — performance tuning)
# Recommended ranges:
# - Development: min=2, max=10
# - Production (low traffic): min=5, max=20
# - Production (high traffic): min=10, max=50
# DB_POOL_MIN=2 # Minimum number of connections to maintain (keeps connections warm)
# DB_POOL_MAX=20 # Maximum number of concurrent connections (prevents exhaustion)
# DB_POOL_IDLE_TIMEOUT_MS=30000 # Time (ms) before idle connections are closed (30s default)
# DB_POOL_CONNECTION_TIMEOUT_MS=5000 # Max wait time (ms) for new connection (5s default)
# -----------------------------------------------------------------------------
# Backend (NestJS)
# -----------------------------------------------------------------------------
PORT=3001
FRONTEND_URL=http://localhost:3000
# JWT_SECRET must be at least 32 characters long
# Generate a secure secret using: openssl rand -base64 32
# Example (DO NOT USE THIS): abcdefghijklmnopqrstuvwxyz123456
JWT_SECRET=REPLACE_WITH_32_PLUS_CHAR_SECRET
# Port for internal metrics endpoint — should never be exposed to the internet
# INTERNAL_PORT=9090
# -----------------------------------------------------------------------------
# Database Seed (optional — used by `yarn db:seed`)
# -----------------------------------------------------------------------------
# SEED_DEMO_PASSWORD=ChangeMe!Demo1
# SEED_ADMIN_PASSWORD=ChangeMe!Admin1
# -----------------------------------------------------------------------------
# Frontend (Next.js)
# -----------------------------------------------------------------------------
# Backend REST API base URL (no trailing slash)
NEXT_PUBLIC_API_URL=http://localhost:3001/api
# Backend WebSocket URL (used by Socket.IO client)
NEXT_PUBLIC_WS_URL=http://localhost:3001
# -----------------------------------------------------------------------------
# Google OAuth (optional — enables "Sign in with Google")
# -----------------------------------------------------------------------------
# To obtain credentials:
# 1. Go to https://console.cloud.google.com/apis/credentials
# 2. Create a new OAuth 2.0 Client ID (Web application)
# 3. Add http://localhost:3001/api/auth/google/callback to "Authorized redirect URIs"
# GOOGLE_CLIENT_ID=your-google-client-id
# GOOGLE_CLIENT_SECRET=your-google-client-secret
# GOOGLE_CALLBACK_URL=http://localhost:3001/api/auth/google/callback
# Set to 'true' to enable the "Sign in with Google" button in the frontend
# NEXT_PUBLIC_GOOGLE_ENABLED=true
# -----------------------------------------------------------------------------
# Email — Mailgun HTTP API (optional)
# -----------------------------------------------------------------------------
# Sign up at https://www.mailgun.com and add a sending domain
# MAILGUN_API_KEY=key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# MAILGUN_DOMAIN=mg.yourdomain.com
# MAILGUN_EU_HOST=false # Set to 'true' if your Mailgun account is in the EU region
# EMAIL_FROM=noreply@retro.local
# -----------------------------------------------------------------------------
# Sentry — Error Tracking (optional)
# -----------------------------------------------------------------------------
# Server-side DSN (shared by backend + Next.js server components)
# SENTRY_DSN=https://your-dsn@sentry.io/project-id
# SENTRY_ENABLED=false
# Client-side DSN (publicly visible, safe to expose in browser bundles)
# NEXT_PUBLIC_SENTRY_DSN=https://your-dsn@sentry.io/project-id
# NEXT_PUBLIC_SENTRY_ENABLED=false
# Build-time config — only needed for uploading source maps to Sentry
# SENTRY_ORG=your-sentry-org
# SENTRY_PROJECT=your-sentry-project
# SENTRY_AUTH_TOKEN=your-sentry-auth-token