forked from antonio-ivanovski/spliit-cloud
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontainer.env.example
More file actions
89 lines (76 loc) · 2.41 KB
/
Copy pathcontainer.env.example
File metadata and controls
89 lines (76 loc) · 2.41 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
# Image and host-port settings.
SPLIIT_TAG=latest
BIND_ADDRESS=127.0.0.1
WEB_PORT=3000
# The one public HTTPS origin served by your reverse proxy.
APP_URL=https://spliit.example.com
# Split-origin deployments only: set these to the public web and API origins.
# Leave both empty for the normal same-origin setup.
WEB_ORIGINS=
BETTER_AUTH_URL=
# Keep true behind a trusted reverse proxy. Set false if clients can connect
# directly to a gateway bound beyond loopback.
TRUST_PROXY=true
# PostgreSQL. Generate a long random password and back up the Docker volume.
POSTGRES_DB=spliit
POSTGRES_USER=spliit
POSTGRES_PASSWORD=change-me-to-a-long-random-password
# Better Auth. Generate with: openssl rand -base64 32
BETTER_AUTH_SECRET=
# SMTP is required for sign-in links, verification, recovery, and invitations.
SMTP_HOST=smtp.example.com
SMTP_PORT=587
# Set both for authenticated SMTP, or leave both empty for a trusted relay.
SMTP_USER=
SMTP_PASS=
EMAIL_FROM=Spliit Cloud <noreply@example.com>
# Signs notification unsubscribe links. Generate with: openssl rand -hex 32
EMAIL_UNSUBSCRIBE_SECRET=
# Instance defaults.
PUBLIC_DEFAULT_CURRENCY_CODE=USD
# Optional Google OAuth.
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
# Optional GitHub OAuth.
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
# Optional S3-compatible expense-document storage.
PUBLIC_ENABLE_EXPENSE_DOCUMENTS=false
S3_UPLOAD_KEY=
S3_UPLOAD_SECRET=
S3_UPLOAD_BUCKET=
S3_UPLOAD_REGION=
S3_UPLOAD_ENDPOINT=
S3_UPLOAD_PUBLIC_URL=
# Optional AI features.
PUBLIC_ENABLE_RECEIPT_EXTRACT=false
PUBLIC_ENABLE_VOICE_EXPENSE=false
PUBLIC_ENABLE_CATEGORY_EXTRACT=false
PUBLIC_ENABLE_BULK_CATEGORIZE=false
AI_PROVIDER=openai
AI_API_KEY=
AI_BASE_URL=
AI_RECEIPT_MODEL=gpt-5-nano
AI_CATEGORY_MODEL=gpt-5-nano
AI_VOICE_MODEL=
AI_CATEGORY_RECENT_EXPENSES_LIMIT=50
# Optional Web Push. Configure all three values or leave all three empty.
PUSH_VAPID_PUBLIC_KEY=
PUSH_VAPID_PRIVATE_KEY=
PUSH_VAPID_SUBJECT=
# Optional MCP/assistant API. The MCP service is deployed separately.
ENABLE_MCP=false
MCP_PUBLIC_URL=
# Required and at least 32 bytes only when ENABLE_MCP=true.
ASSISTANT_CONFIRMATION_SECRET=
# Background worker.
JOBS_ENABLED=true
JOBS_RECONCILIATION_CRON=*/30 * * * *
JOBS_NOTIFICATION_RECONCILE_CRON=*/15 * * * *
JOBS_MAX_CONCURRENCY=1
JOBS_POLLING_INTERVAL_SECONDS=60
JOBS_MAINTENANCE_POLLING_INTERVAL_SECONDS=300
JOBS_POOL_SIZE=8
JOBS_RETRY_LIMIT=5
JOBS_RETRY_BACKOFF_SECONDS=30
JOBS_RETENTION_SECONDS=604800