Feature 4: Webinterface — React-Frontend, Discord-OAuth2, REST-API
- Discord-OAuth2-Login (identify-Scope, CSRF-State, signierte Session-Cookies, keine Token-Speicherung) - REST-API: /api/devlogs (öffentlich), /api/commits (nur ADMIN_DISCORD_ID), /api/me - React + Vite Frontend: Devlog-Archiv mit Mini-Markdown-Renderer, Commit-Tabelle, dunkles EcoGame-Theme - Fastify liefert frontend/dist mit SPA-Fallback aus; Vite-Dev-Proxy für lokale Entwicklung - Multi-Stage-Dockerfile (Frontend-Build im Image), neue Env-Vars in Compose + .env.example - README: OAuth2-Setup (Redirect-URLs, Client Secret) und Frontend-Workflow Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -25,6 +25,23 @@ COMMIT_CHANNEL_ID=
|
||||
# Denselben Wert im Gitea-Webhook als "Secret" eintragen!
|
||||
GITEA_WEBHOOK_SECRET=
|
||||
|
||||
# --- Webinterface (Feature 4) ---
|
||||
|
||||
# Discord Developer Portal → deine App → OAuth2 → "Client Secret" (ggf. Reset Secret)
|
||||
DISCORD_CLIENT_SECRET=
|
||||
|
||||
# Zufälliger String zum Signieren der Session-Cookies — generieren mit:
|
||||
# node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
|
||||
SESSION_SECRET=
|
||||
|
||||
# Deine Discord-User-ID (Rechtsklick auf deinen Namen → "Benutzer-ID kopieren")
|
||||
# Nur dieser Account sieht die Commit-Seite
|
||||
ADMIN_DISCORD_ID=
|
||||
|
||||
# Öffentliche Basis-URL für den OAuth2-Redirect
|
||||
# Lokal zum Testen: http://localhost:3080 (auch im Developer Portal eintragen!)
|
||||
PUBLIC_URL=https://bot.d4rkst3r.de
|
||||
|
||||
# Optional: HTTP-Port des Webservers (Default: 3080)
|
||||
# HTTP_PORT=3080
|
||||
|
||||
|
||||
Reference in New Issue
Block a user