-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path.env.example
More file actions
164 lines (127 loc) · 6.74 KB
/
.env.example
File metadata and controls
164 lines (127 loc) · 6.74 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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# =============================================================================
# Database Configuration
# =============================================================================
# DATABASE_URL: PostgreSQL connection string
# Examples:
# - Local: postgresql://postgres:password@localhost:5432/vaalimasiina
# - Railway: postgresql://user:pass@containers-us-west-1.railway.app:5432/railway
# - Supabase: postgresql://postgres:[password]@db.[project-ref].supabase.co:5432/postgres
DATABASE_URL="postgresql://postgres:password@localhost:5432/vaalimasiina"
# =============================================================================
# Application Configuration
# =============================================================================
# NEXT_PUBLIC_BASE_URL: Base URL of the application
# Examples:
# - Development: http://localhost:3000
# - Production: https://vaalit.fyysikkokilta.fi
NEXT_PUBLIC_BASE_URL="http://localhost:3000"
# PORT: Server port (default: 3000)
PORT=3000
# =============================================================================
# Authentication - OAuth Configuration
# =============================================================================
# AUTH_SECRET: Secret key for JWT tokens
# Generate a random string for production!
AUTH_SECRET="your-random-secret-key-here"
# OAUTH_PROVIDERS: Comma-separated list of OAuth providers to enable
# Supported providers: google, github, microsoft, or custom provider IDs
# Example: google,github
OAUTH_PROVIDERS="google"
# ADMIN_EMAILS: Comma-separated list of email addresses allowed to access admin panel
# Example: admin1@example.com,admin2@example.com
ADMIN_EMAILS="admin@example.com"
# =============================================================================
# OAuth Provider Configuration
# =============================================================================
# For each provider in OAUTH_PROVIDERS, configure the following:
# - OAUTH_<PROVIDER>_CLIENT_ID: OAuth client ID
# - OAUTH_<PROVIDER>_CLIENT_SECRET: OAuth client secret
# - For custom providers, also set:
# - OAUTH_<PROVIDER>_AUTHORIZATION_URL: OAuth authorization URL
# - OAUTH_<PROVIDER>_TOKEN_URL: OAuth token exchange URL
# - OAUTH_<PROVIDER>_USERINFO_URL: User info endpoint URL
# - OAUTH_<PROVIDER>_SCOPES: Comma-separated scopes (optional, defaults to "openid,email,profile")
# - OAUTH_<PROVIDER>_DISPLAY_NAME: Display name for the login button (optional, defaults to provider ID)
# =============================================================================
# Google OAuth
# =============================================================================
# OAUTH_GOOGLE_CLIENT_ID: Google OAuth client ID from Google Cloud Console
OAUTH_GOOGLE_CLIENT_ID="your-google-oauth-client-id"
# OAUTH_GOOGLE_CLIENT_SECRET: Google OAuth client secret from Google Cloud Console
OAUTH_GOOGLE_CLIENT_SECRET="your-google-oauth-client-secret"
# =============================================================================
# GitHub OAuth Example
# =============================================================================
# OAUTH_GITHUB_CLIENT_ID: GitHub OAuth client ID from GitHub Developer Settings
# OAUTH_GITHUB_CLIENT_SECRET: GitHub OAuth client secret from GitHub Developer Settings
# =============================================================================
# Microsoft OAuth Example
# =============================================================================
# OAUTH_MICROSOFT_CLIENT_ID: Microsoft OAuth client ID from Azure Portal
# OAUTH_MICROSOFT_CLIENT_SECRET: Microsoft OAuth client secret from Azure Portal
# =============================================================================
# Custom OAuth Provider Example
# =============================================================================
# OAUTH_MYCUSTOM_CLIENT_ID="your-client-id"
# OAUTH_MYCUSTOM_CLIENT_SECRET="your-client-secret"
# OAUTH_MYCUSTOM_AUTHORIZATION_URL="https://example.com/oauth/authorize"
# OAUTH_MYCUSTOM_TOKEN_URL="https://example.com/oauth/token"
# OAUTH_MYCUSTOM_USERINFO_URL="https://example.com/oauth/userinfo"
# OAUTH_MYCUSTOM_SCOPES="openid,email,profile"
# OAUTH_MYCUSTOM_DISPLAY_NAME="My Custom Provider"
# =============================================================================
# Email Configuration
# =============================================================================
# MAIL_FROM: Email address for sending emails
MAIL_FROM="Vaalimasiina <vaalit@fyysikkokilta.fi>"
# SMTP Configuration (required for production)
# SMTP_HOST: SMTP server hostname
# Examples:
# - Gmail: smtp.gmail.com
# - Outlook: smtp-mail.outlook.com
# - Custom: mail.example.com
SMTP_HOST=""
# SMTP_PORT: SMTP server port (default: 587 for TLS, 465 for SSL)
SMTP_PORT=587
# SMTP_SECURE: Use SSL/TLS (default: false, set to true for port 465)
SMTP_SECURE="false"
# SMTP_USER: SMTP authentication username (usually your email address)
SMTP_USER=""
# SMTP_PASSWORD: SMTP authentication password or app-specific password
SMTP_PASSWORD=""
# =============================================================================
# S3-Compatible Storage (optional)
# =============================================================================
# S3_ACCESS_KEY_ID: S3-compatible storage access key ID
S3_ACCESS_KEY_ID=""
# S3_SECRET_ACCESS_KEY: S3-compatible storage secret access key
S3_SECRET_ACCESS_KEY=""
# S3_ENDPOINT: S3-compatible storage endpoint URL (with bucket name)
# Examples:
# - Cloudflare R2: https://[account-id].r2.cloudflarestorage.com/[bucket-name]
# - AWS S3: https://s3.amazonaws.com/[bucket-name]
S3_ENDPOINT=""
# S3_REGION: S3-compatible storage region (default: auto)
S3_REGION="auto"
# =============================================================================
# Branding (optional)
# =============================================================================
# Email branding
BRANDING_EMAIL_SUBJECT_PREFIX="Vaalimasiina"
BRANDING_MAIL_FOOTER_TEXT="Rakkaudella Fysistit"
BRANDING_MAIL_FOOTER_LINK="https://vaalit.fyysikkokilta.fi"
# Email color branding (used for button and header background colors)
# BRANDING_PRIMARY_COLOR is used for voting button background (default: FK yellow)
# BRANDING_SECONDARY_COLOR is used for email header background and text (default: FK black)
BRANDING_PRIMARY_COLOR="#fbdb1d"
BRANDING_SECONDARY_COLOR="#201e1e"
# Client-side branding (visible in browser)
NEXT_PUBLIC_BRANDING_HEADER_TITLE_TEXT="Vaalimasiina"
NEXT_PUBLIC_BRANDING_HEADER_TITLE_SHORT_TEXT="Vaalimasiina"
NEXT_PUBLIC_BRANDING_FOOTER_HOME_TEXT="fyysikkokilta.fi"
NEXT_PUBLIC_BRANDING_FOOTER_HOME_LINK="https://fyysikkokilta.fi"
# =============================================================================
# Debugging (optional)
# =============================================================================
# ANALYZE: Enable bundle analysis (default: false)
ANALYZE="false"