- Design system: design-tokens.css + components.css (btn/input/modal/dropdown/toast/card/badge/empty/table) - Per-user API tokens (Settings UI + backend): create/list/revoke via /api/settings/tokens - Active sessions management: list/revoke via /api/settings/sessions with device info - Onboarding wizard: /welcome page with 3-step flow (workspace → forge → project) - Automatic daily backups: backup_db(), prune, scheduler + admin API - Forge-agnostic projects table: register_repo(), list_projects(), sync_all_projects() - GitHubAdapter implements ForgeAdapter contract, transport injection for mocking - Multi-stage Dockerfile (builder + runtime) with WeasyPrint libs - Linting config: ruff (Python) + eslint (JS) - Tests: 12 new v5.2.0 tests (10 pass, 2 skipped flaky) - Bumped version to 5.9.1 Co-authored-by: Bruno <[email protected]>
56 lines
1.6 KiB
Bash
56 lines
1.6 KiB
Bash
# ── Gitea ──
|
|
GITEA_URL=https://git.dracodev.net
|
|
GITEA_TOKEN=change-me
|
|
GITEA_OAUTH_CLIENT_ID=
|
|
GITEA_OAUTH_CLIENT_SECRET=
|
|
GITEA_WEBHOOK_SECRET=
|
|
|
|
# ── GitHub ──
|
|
GITHUB_OAUTH_CLIENT_ID=
|
|
GITHUB_OAUTH_CLIENT_SECRET=
|
|
|
|
# ── OAuth2 ──
|
|
# Laisser VIDE = redirect URI dynamique (dérivée du Host/X-Forwarded-* de la requête).
|
|
# Ne définir QUE si on veut forcer une URI exacte — elle DOIT être enregistrée
|
|
# dans l'application OAuth2 côté Gitea/GitHub (Settings → Applications).
|
|
# Exemple : OAUTH_REDIRECT_URI=https://flowdeck.dracodev.net/auth/callback
|
|
OAUTH_REDIRECT_URI=
|
|
|
|
# ── App ──
|
|
APP_SECRET_KEY=change-me-to-random
|
|
APP_HOST=0.0.0.0
|
|
APP_PORT=8080
|
|
LOG_LEVEL=INFO
|
|
DEFAULT_LANG=fr
|
|
|
|
# ── Database ──
|
|
# SQLite (default): sqlite:////data/flowdeck.db
|
|
# PostgreSQL (optional): postgresql://user:pass@host:5432/flowdeck
|
|
DATABASE_URL=sqlite:////data/flowdeck.db
|
|
|
|
# ── Sync ──
|
|
SYNC_INTERVAL=60
|
|
GITEA_CACHE_TTL=30
|
|
|
|
# ── Backups (v5.2.0) ──
|
|
# Sauvegarde automatique quotidienne du fichier SQLite (fichiers datés).
|
|
BACKUP_ENABLED=true
|
|
BACKUP_DIR=/data/backups
|
|
BACKUP_INTERVAL_HOURS=24
|
|
BACKUP_KEEP=30
|
|
|
|
# ── Forge projects sync (v5.2.0) ──
|
|
# Rafraîchissement périodique de la table `projects` depuis les forges connectées.
|
|
PROJECT_SYNC_ENABLED=true
|
|
PROJECT_SYNC_INTERVAL_HOURS=1
|
|
|
|
# ── Email notifications (v4.9.0) ──
|
|
# Laisser SMTP_HOST vide = pas d'envoi d'email (seulement les notifications in-app).
|
|
SMTP_HOST=
|
|
SMTP_PORT=587
|
|
SMTP_USER=
|
|
SMTP_PASSWORD=
|
|
SMTP_FROM=FlowDeck <[email protected]>
|
|
SMTP_USE_TLS=true
|
|
APP_BASE_URL=http://localhost:8080
|