# Flixy Web Die Weboberfläche für Rechner, auf denen es keine App gibt — Windows vor allem. ## Aufbau | Ordner | Was | |---|---| | `app/` | Das Frontend (Vite, TypeScript) | | `server/` | Ein Server ohne Abhängigkeiten, der die Anfragen weiterreicht und die gebauten Dateien ausliefert | | `frontend/` | Die erste Fassung als **einzelne Datei**. Läuft, wird abgelöst. | | `jellyfin-theme/` | Ein Kleid für Jellyfins eigene Oberfläche — die kleine Lösung von vorher | ## Warum ein eigener Server? Er löst zwei Dinge, an denen die einzelne Datei scheitert, und zwar unabhängig davon, wie gut das Frontend geschrieben ist: - **Herkunft.** Anfragen laufen über `/api` und damit über dieselbe Adresse wie die Seite. Kein CORS, auch nicht beim Streamen. - **Klartext und Verschlüsselung.** Läuft der Medienserver über `http` und die Seite über `https`, blockiert der Browser den Stream. Dagegen kann keine Zeile im Frontend etwas tun — ein Server davor schon. Nebenbei bleibt der Zugangsschlüssel beim Server, statt im Browser zu liegen. ## Betreiben ```bash cd app && npm install && npm run build cd ../server && FLIXY_SERVER=http://jellyfin:8096 node index.js ``` Dann auf `http://localhost:8080`. Der Port lässt sich über `PORT` ändern. ## Entwickeln ```bash cd app && FLIXY_SERVER=http://jellyfin:8096 npm run dev ``` Vite übernimmt dabei das Weiterreichen, der eigene Server wird nicht gebraucht.