File size: 1,462 Bytes
b84ea83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# ── Application ──
APP_NAME=Apl_GS API
APP_ENV=development
APP_DEBUG=True

# ── Server ──
HOST=0.0.0.0
PORT=5000

# ── Database (PostgreSQL 15+) ──
# Format: postgresql+asyncpg://<user>:<password>@<host>:<port>/<database>
DATABASE_URL=postgresql+asyncpg://postgres:your_password_here@localhost:5432/apl_gs

# ── CORS ──
CORS_ORIGINS=http://localhost,http://localhost:3000,http://localhost:8080,http://localhost:5000

# ── Rate Limiter (no auth, rate limiter protects the API) ──
RATE_LIMIT_ENABLED=True
RATE_LIMIT_REQUESTS_PER_MINUTE=60
RATE_LIMIT_REQUESTS_PER_HOUR=1000

# ── File Storage ──
UPLOAD_DIR=./uploads
MAX_FILE_SIZE_MB=10

# ── Database Pool ──
DB_POOL_SIZE=10
DB_MAX_OVERFLOW=20

# ── Cloud Storage (S3 / MinIO / GCS) ──
# See services/storage_service.py for details
STORAGE_BACKEND=minio
STORAGE_ENDPOINT=http://localhost:9000
STORAGE_BUCKET=apl-gs-photos
STORAGE_ACCESS_KEY=minioadmin
STORAGE_SECRET_KEY=minioadmin
STORAGE_REGION=us-east-1

# ── Firebase (FCM Push Notifications) ──
# See config/firebase_config.py for setup instructions
FIREBASE_CREDENTIALS_PATH=./config/firebase-credentials.json

# ── JWT Authentication ──
# See config/auth_config.py for details
# IMPORTANT: Change the secret key in production!
JWT_SECRET_KEY=dev-secret-key-change-me-in-production
JWT_ALGORITHM=HS256
JWT_ACCESS_TOKEN_EXPIRE_MINUTES=60

# ── Logging ──
LOG_LEVEL=INFO