-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy path.env.production.example
More file actions
90 lines (83 loc) · 2.92 KB
/
.env.production.example
File metadata and controls
90 lines (83 loc) · 2.92 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
# ==========================================
# FEEDBACK WIDGET - PRODUCTION ENVIRONMENT
# ==========================================
#
# SELF-HOSTED DEPLOYMENT (Docker Compose)
#
# This file is used with: docker-compose -f docker-compose.prod.yml --env-file .env.production up -d
#
# AUTOMATIC SETUP - You only need to:
# 1. Copy this file: cp .env.production.example .env.production
# 2. Change the passwords below
# 3. (Optional) Add AI provider credentials if you want AI features
# 4. Run: docker-compose -f docker-compose.prod.yml --env-file .env.production up -d
#
# The system will automatically:
# - Create the PostgreSQL database
# - Run all migrations
# - Seed initial data
# - Start the API server
#
# ==========================================
# ==========================================
# REQUIRED: Database Configuration
# ==========================================
# Change 'changeme' to a strong password!
POSTGRES_USER=postgres
POSTGRES_PASSWORD=your-strong-password-here
POSTGRES_DB=feedback_widget
# This URL must match the credentials above
# Format: postgresql://USER:PASSWORD@postgres:5432/DB?schema=public
DATABASE_URL=postgresql://postgres:your-strong-password-here@postgres:5432/feedback_widget?schema=public
# ==========================================
# REQUIRED: Server Configuration
# ==========================================
# Which port to expose the API on the host
API_PORT=3333
# ==========================================
# REQUIRED: Security Configuration
# ==========================================
# Generate a secure 64-char hex key:
# node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
# This is used to encrypt sensitive data like API keys
ENCRYPTION_KEY=your-64-char-hex-key-here-change-this-in-production
# Allowed frontend domains (CORS)
# Examples: https://yourdomain.com,https://app.yourdomain.com
# Use "*" only for testing (not recommended for production)
CORS_ORIGIN=*
# ==========================================
# OPTIONAL: AI Provider (Widget works great without AI!)
# ==========================================
# Set AI_PROVIDER to: MOONSHOT, ANTHROPIC, or NONE (default)
#
# To enable AI:
# 1. Set AI_PROVIDER=MOONSHOT (or ANTHROPIC)
# 2. Get your API key from the provider
# 3. Set AI_API_KEY=your-key-here
#
AI_PROVIDER=NONE
AI_API_KEY=
AI_MODEL=kimi-k2.5
# ==========================================
# OPTIONAL: Email / SMTP (for notifications)
# ==========================================
# If not configured, email notifications will be silently disabled
#
# Example with Mailtrap (for testing):
# SMTP_HOST=sandbox.smtp.mailtrap.io
# SMTP_PORT=2525
# SMTP_USER=your_mailtrap_user
# SMTP_PASS=your_mailtrap_pass
#
# Example with Gmail:
# SMTP_HOST=smtp.gmail.com
# SMTP_PORT=587
# SMTP_USER=your-email@gmail.com
# SMTP_PASS=your-app-password
#
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASS=
ADMIN_EMAIL=admin@example.com
ENABLE_EMAIL_NOTIFICATIONS=false