File size: 5,721 Bytes
e4fd6e0
 
 
 
 
 
 
 
 
 
 
b0bcfd5
 
e4fd6e0
 
 
 
 
 
 
 
9fc36aa
e4fd6e0
 
 
b0bcfd5
e4fd6e0
b0bcfd5
e4fd6e0
 
 
 
b0bcfd5
 
e4fd6e0
 
 
b0bcfd5
e4fd6e0
9fc36aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e3566c9
 
 
 
 
 
 
 
 
e4fd6e0
 
b0bcfd5
e4fd6e0
b0fbfb5
e4fd6e0
 
 
 
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
# ICH Screening Application - Environment Configuration
# STEP 1: Copy this file to .env
# STEP 2: Update values below with your configuration
# STEP 3: DO NOT commit .env to version control!

# ════════════════════════════════════════════════════════════════════════════
# APPLICATION & DEBUG
# ════════════════════════════════════════════════════════════════════════════
FLASK_ENV=production
FLASK_DEBUG=False
ICH_APP_DEBUG=False
ICH_APP_PORT=7860

# Secret key for Flask sessions - MUST be set in production
# Generate with: python -c "import secrets; print(secrets.token_hex(32))"
SECRET_KEY=CHANGE_ME_IN_PRODUCTION_USE_COMMAND_ABOVE

# ════════════════════════════════════════════════════════════════════════════
# DATABASE - NEON POSTGRESQL (REQUIRED)
# ════════════════════════════════════════════════════════════════════════════
# Your connection string from Neon
DATABASE_URL=postgresql://<username>:<password>@<host>/<database>?sslmode=require
# ════════════════════════════════════════════════════════════════════════════
# FILE UPLOADS & STORAGE
# ════════════════════════════════════════════════════════════════════════════
ICH_MAX_UPLOAD_MB=2048
UPLOAD_BASE_DIR=uploads

# ════════════════════════════════════════════════════════════════════════════
# MODEL CONFIGURATION
# ════════════════════════════════════════════════════════════════════════════
# Fold selection: ensemble | best | 0 | 1 | 2 | 3 | 4
ICH_FOLD_SELECTION=ensemble

# Hugging Face model repository
ICH_HF_MODEL_REPO=HarshCode/eff_b4_brain
ICH_HF_TOKEN=

# ════════════════════════════════════════════════════════════════════════════
# SMTP / EMAIL (REQUIRED FOR OTP + PASSWORD RESET EMAILS)
# ════════════════════════════════════════════════════════════════════════════
SMTP_HOST=smtp.your-provider.com
SMTP_PORT=587
SMTP_USER=your-email@domain.com
SMTP_PASSWORD=CHANGE_ME
SMTP_FROM=no-reply@your-domain.com
SMTP_USE_TLS=true

# Optional aliases also supported by code (Brevo-style):
# EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER, EMAIL_HOST_PASSWORD, EMAIL_FROM, EMAIL_USE_TLS

# Public base URL used in email links when app is behind proxy/load balancer.
# Example local:  ICH_PUBLIC_BASE_URL=http://127.0.0.1:7860
# Example prod:   ICH_PUBLIC_BASE_URL=https://your-domain.com
ICH_PUBLIC_BASE_URL=

# Optional local debugging for auth emails (prints OTP/reset link to server logs)
ICH_DEBUG_AUTH_EMAILS=false

# ════════════════════════════════════════════════════════════════════════════
# CELERY + REDIS (ASYNC TASK QUEUE FOR BATCH PROCESSING)
# ════════════════════════════════════════════════════════════════════════════
# Redis broker and result backend for Celery workers.
# Local dev: redis://localhost:6379/0
# Upstash (cloud): rediss://default:<auth_token>@<hostname>:<port>
# Leave empty to use default local Redis
REDIS_URL=

# ════════════════════════════════════════════════════════════════════════════
# LOGGING & MONITORING
# ════════════════════════════════════════════════════════════════════════════
ICH_LOG_LEVEL=INFO
ICH_LOCAL_MODE=True

# ════════════════════════════════════════════════════════════════════════════
# RENDER.COM DEPLOYMENT (optional)
# ════════════════════════════════════════════════════════════════════════════
# RENDER_EXTERNAL_HOSTNAME is set automatically by Render