-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
110 lines (93 loc) · 4.26 KB
/
Copy path.env.example
File metadata and controls
110 lines (93 loc) · 4.26 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
# ============================================================================
# BilikSantri - Environment Variables Template
# Copy this file to .env and replace every placeholder before running the app.
# Never commit your real .env file.
# ============================================================================
# --- WHITE-LABEL & IDENTITY --------------------------------------------------
APP_NAME=BilikSantri
APP_TAGLINE=Ruang Aman untuk Berbagi
INSTITUTION_TYPE=pesantren
# Options: pesantren | sekolah | kampus | perusahaan
USER_LABEL=Santri
# Options: Santri | Siswa | Mahasiswa | Karyawan
COUNSELOR_LABEL=Guru BK
# Options: Guru BK | Konselor | Psikolog | HR
PRIMARY_COLOR=#1B4F72
ACCENT_COLOR=#148F77
LOGO_PATH=static/assets/logo.png
# --- SERVER ------------------------------------------------------------------
HOST=0.0.0.0
PORT=8000
DEBUG=false
# Set DEBUG=true only for local development.
# --- SECURITY ----------------------------------------------------------------
# Generate with: python -c "import secrets; print(secrets.token_hex(32))"
SECRET_KEY=replace_with_random_64_char_secret
# Generate with: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
ENCRYPTION_KEY=replace_with_valid_fernet_key
ACCESS_TOKEN_EXPIRE_MINUTES=15
REFRESH_TOKEN_EXPIRE_DAYS=7
SESSION_TIMEOUT_MINUTES=30
# --- DATABASE ----------------------------------------------------------------
TURSO_DATABASE_URL=libsql://your-database-name.turso.io
TURSO_AUTH_TOKEN=your_turso_auth_token
# --- AI PROVIDER -------------------------------------------------------------
AI_PROVIDER=gemini
# Options: gemini | openai | ollama
AI_MODEL_NAME=gemini-2.0-flash
GEMINI_API_KEY=your_gemini_api_key
OPENAI_API_KEY=
OLLAMA_BASE_URL=http://localhost:11434
# --- GROQ FALLBACK AI --------------------------------------------------------
# Optional fallback keys if the primary AI provider fails.
GROQ_API_KEY_1=
GROQ_API_KEY_2=
GROQ_API_KEY_3=
GROQ_MODEL=llama-3.3-70b-versatile
AI_SYSTEM_PROMPT="Kamu adalah konselor digital yang empatik dan bijak bernama Ustadz Faza. Kamu mendengarkan dengan penuh perhatian, merespons dengan lembut, dan selalu menyisipkan perspektif nilai-nilai Islami yang menenangkan seperti tawakkal, sabar, dan dzikir. Kamu tidak mendiagnosis kondisi medis. Jika pengguna mengindikasikan krisis serius, selalu dorong mereka untuk berbicara langsung dengan konselor manusia."
# --- AI MEMORY ---------------------------------------------------------------
AI_CONTEXT_SUMMARY_ENABLED=true
AI_CONTEXT_MAX_TOKENS=500
AI_CONTEXT_UPDATE_TRIGGER=session_end
# Options: session_end | daily
# --- FEATURE FLAGS -----------------------------------------------------------
FEATURE_AI_CHAT=true
FEATURE_JOURNAL=true
FEATURE_RELAX=true
FEATURE_ESCALATION=true
# --- ESCALATION --------------------------------------------------------------
ESCALATION_THRESHOLD_DAYS=3
ESCALATION_MOOD_SCORE=2
# --- EMAIL ALERTS ------------------------------------------------------------
EMAIL_ALERT_ENABLED=false
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASSWORD=
ALERT_RECIPIENT_EMAIL=
# --- CLOUDINARY --------------------------------------------------------------
# Optional. Used for uploading image/audio/video content into Ruang Tenang.
# YouTube links can still be pasted manually even if Cloudinary is empty.
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
CLOUDINARY_FOLDER=biliksantri/ruang-tenang
# --- WEEKLY REPORTS ----------------------------------------------------------
WEEKLY_REPORT_ENABLED=true
WEEKLY_REPORT_DAY=friday
# Options: monday | tuesday | wednesday | thursday | friday | saturday | sunday
# --- ACCOUNT MANAGEMENT ------------------------------------------------------
# Bootstrap admin is only used if the app starts and there is no admin account yet.
BOOTSTRAP_ADMIN_USERNAME=admin
BOOTSTRAP_ADMIN_PASSWORD=change_this_admin_password
BOOTSTRAP_ADMIN_DISPLAY_NAME=Admin Utama
# Public self-registration is disabled by default.
ALLOW_PUBLIC_REGISTER=false
# Santri self-delete switch.
ALLOW_SELF_DELETE=true
SOFT_DELETE_GRACE_PERIOD_DAYS=30
DELETION_REQUIRES_CONFIRMATION=true
DATA_RETENTION_AUDIT_LOG=forever
# --- RATE LIMITING -----------------------------------------------------------
LOGIN_RATE_LIMIT=10/minute
# Format: amount/unit, for example 10/minute or 100/day