-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
102 lines (83 loc) · 4.07 KB
/
.env.example
File metadata and controls
102 lines (83 loc) · 4.07 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
# Barashka Music Player - Environment Variables
> Copy this file to `.env` and configure for your deployment.
> **Never commit `.env` file to Git!**
## ============================================================================
## BARASHKA APPLICATION
## ============================================================================
# Application port for production build
BARASHKA_PORT=3000
# Application port for development mode
BARASHKA_DEV_PORT=5173
## ============================================================================
## AUTH GATE (Server-side Authentication)
## ============================================================================
# Set to 'true' to require login (Firebase authentication)
# Set to 'false' to allow public access
AUTH_ENABLED=false
# Random secret key for session encryption
# Generate with: openssl rand -hex 32
# REQUIRED if AUTH_ENABLED=true
AUTH_SECRET=change-me-to-a-random-string-minimum-32-characters
# Firebase project ID (used for JWT verification)
FIREBASE_PROJECT_ID=monochrome-database
# Firebase configuration JSON (for client-side auth)
# IMPORTANT: This MUST be set to ensure same Firebase UID across all ports/devices!
# Get this from Firebase Console > Project Settings > General > Your apps > SDK setup and configuration
# Format: {"apiKey":"...","authDomain":"...","projectId":"...","storageBucket":"...","messagingSenderId":"...","appId":"..."}
#
# Without this setting, each port/browser may use different Firebase config, resulting in different UIDs
# for the same Google account, which causes profile issues.
#
# Example:
FIREBASE_CONFIG={"apiKey":"AIzaSy...","authDomain":"your-project.firebaseapp.com","projectId":"monochrome-database","storageBucket":"your-project.appspot.com","messagingSenderId":"123456789","appId":"1:123456789:web:abcdef123456"}
## ============================================================================
## AUTH PROVIDERS (Optional - defaults to true when unset)
## ============================================================================
# Enable/disable Google OAuth provider
# AUTH_GOOGLE_ENABLED=true
# Enable/disable Email/Password provider
# AUTH_EMAIL_ENABLED=true
## ============================================================================
## POCKETBASE (Database - Optional)
## ============================================================================
# PocketBase URL (used for cloud sync)
# IMPORTANT: This URL must be accessible from ALL devices/ports where you use Barashka
# If not set, each browser/port will use its own localStorage or default URL
#
# Examples:
# POCKETBASE_URL=https://db.yourdomain.com
# POCKETBASE_URL=https://data.samidy.xyz
# POCKETBASE_URL=http://localhost:8090
POCKETBASE_URL=https://data.samidy.xyz
# PocketBase admin credentials (only used with --profile pocketbase)
PB_ADMIN_EMAIL=admin@example.com
PB_ADMIN_PASSWORD=changeme-me-to-secure-password
# PocketBase server port
POCKETBASE_PORT=8090
## ============================================================================
## SESSION CONFIGURATION
## ============================================================================
# Session max age in milliseconds (default: 7 days)
# SESSION_MAX_AGE=604800000
## ============================================================================
## TIMEZONE
## ============================================================================
TZ=UTC
## ============================================================================
## DEPLOYMENT EXAMPLES
## ============================================================================
# Example 1: Local development (no auth)
# AUTH_ENABLED=false
# BARASHKA_PORT=3000
# Example 2: Production with auth
# AUTH_ENABLED=true
# AUTH_SECRET=your-secret-key-minimum-32-characters-long
# FIREBASE_PROJECT_ID=your-firebase-project
# FIREBASE_CONFIG={"apiKey":"...","authDomain":"...","projectId":"..."}
# Example 3: Docker deployment with PocketBase
# AUTH_ENABLED=true
# AUTH_SECRET=docker-secret-key-change-this
# FIREBASE_PROJECT_ID=monochrome-database
# POCKETBASE_URL=http://pocketbase:8090
# PB_ADMIN_EMAIL=admin@example.com
# PB_ADMIN_PASSWORD=secure-password-here