-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.env.example
More file actions
80 lines (66 loc) · 3.22 KB
/
Copy path.env.example
File metadata and controls
80 lines (66 loc) · 3.22 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
# PostgreSQL (le docker-compose mappe sur 5434 pour éviter les conflits)
DATABASE_URL=postgres://postgres:postgres@localhost:5434/lunatech_betting
# HTTP
BIND_ADDR=127.0.0.1:3000
BASE_URL=http://localhost:3000
# Tenant logo storage backend:
# db (default) — bytes stored in Postgres, survive redeploys. Recommended.
# disk — legacy local files under UPLOADS_DIR (lost on redeploy
# unless UPLOADS_DIR is a persistent volume).
# s3 — object storage (not yet implemented; extension point).
# STORAGE_BACKEND=db
# UPLOADS_DIR=uploads # only used by the `disk` backend
# Session cookie signing key (64+ random bytes, base64).
# Si DEV_MODE=true et que cette variable est absente, une clé aléatoire
# est générée au démarrage (les sessions sautent à chaque redémarrage).
COOKIE_KEY=replace_me_with_64_random_bytes_base64_encoded
# SMTP for magic links (Mailpit/Mailhog in dev)
SMTP_HOST=localhost
SMTP_PORT=1025
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_STARTTLS=false
MAIL_FROM=lunatech-betting@lunatech.com
# football-data.org API
FOOTBALL_DATA_API_KEY=your_api_key_here
FOOTBALL_DATA_COMPETITION=WC
# Restrict signups to this email domain
ALLOWED_EMAIL_DOMAIN=lunatech.com
# Liste des emails admin (séparés par virgule, espaces ignorés, casse ignorée).
# Les utilisateurs avec ces emails sont automatiquement promus admin à chaque
# connexion. Un email retiré de la liste perd l'admin à sa prochaine connexion.
# Exemple: ADMIN_EMAILS=nicolas.leroux@lunatech.com,alice.dupont@lunatech.com
ADMIN_EMAILS=nicolas.leroux@lunatech.com
# Date limite pour s'inscrire au pot (RFC3339). Par défaut: fin de la phase
# de groupes WC2026 (2026-06-27 23:59 UTC).
STAKE_DEADLINE=2026-06-27T23:59:00Z
# Notifications avant chaque match
# Slack: incoming webhook (laisser vide pour désactiver)
SLACK_WEBHOOK_URL=
# Combien de minutes avant le coup d'envoi envoyer les rappels
REMINDER_LEAD_MINUTES=120
# Heure locale Amsterdam (0-23) a partir de laquelle l'email de recap des resultats part le matin
DAILY_DIGEST_HOUR=8
# Heure locale Amsterdam (0-23) a partir de laquelle l'email des matches a venir part
TODAY_MATCHES_HOUR=17
# Web Push (notifications navigateur, spec 08). Laisser vide pour desactiver le
# push : l'app fonctionne sans, seuls les emails partent. Genere une paire de
# cles avec : cargo run -- gen-vapid puis colle les deux lignes ici.
# Le format est base64url (cle privee = scalaire P-256 32 octets, cle publique
# = point non compresse 65 octets), compatible avec les generateurs VAPID usuels.
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=
# Contact joint au service de push (RFC 8292). Defaut : mailto:<MAIL_FROM>.
VAPID_SUBJECT=
# Deep links de l'app mobile Tauri (spec 12). Laisser vide tant que l'app n'est
# pas publiee : les fichiers d'association ne sont alors pas servis.
# iOS universal links : <TeamID>.<BundleID>
APPLE_APP_ID=
# Android app links : nom du package + empreinte SHA-256 du certificat de
# signature (hex separe par des deux-points). Les deux sont requis.
ANDROID_PACKAGE=
ANDROID_CERT_FINGERPRINT=
# Mode développement : active la page /dev (login en un clic),
# autorise COOKIE_KEY absent, ne plante pas si SMTP indisponible.
DEV_MODE=true
RUST_LOG=lunatech_betting=debug,tower_http=info