Zum Hauptinhalt springen

Frontend

Das Frontend ist eine React/Vite-Anwendung.

Lokal

Im lokalen Docker-Setup startet das Frontend mit Vite-Hot-Reload. Der Vite-Dev-Server aktiviert den lokalen /api-Proxy auf das Backend.

Frontend-Änderungen brauchen im Normalfall keinen Image-Rebuild.

Server

Im Servermodus ist der fertige Frontend-Container ein Nginx-Container und enthält kein npm. Er liefert nur die SPA aus; API-Routing übernimmt der zentrale Reverse Proxy.

Neue public-Assets, zum Beispiel E-Mail-Bilder, werden erst nach einem Frontend-Image-Rebuild im Nginx-Container ausgeliefert.

Auth und Session-Verhalten

  • Die Web-Session läuft über HttpOnly-Cookies.
  • Das Frontend speichert kein JWT im localStorage.
  • Nach Steam-Login wird das Inventar automatisch synchronisiert.
  • Beim Betreten des Inventar-Tabs läuft automatisch ein Steam-Inventar-Sync, wenn der letzte Auto-Sync in der aktuellen Browser-Session älter als 10 Minuten ist.
  • Der frühere manuelle Sync Steam-Button im Inventar ist bewusst entfernt.

Admin-Bereich

Im Frontend erscheint für Admins ein eigener Menüpunkt Admin. Dort sind aktuell verlinkt:

  • Stripe Wallet Debug
  • Wallet Ledger Verify
  • Bot Inspect Debug

Der Menüpunkt wird nur angezeigt, wenn der angemeldete Nutzer role = admin hat. Die zugehörigen Backend-Endpoints prüfen zusätzlich serverseitig requireAuth plus Admin-Rolle.