Files
Flaro/web/README.md
T
ScarriffleandClaude Opus 5 efed8717a3 „Auto" gibt nicht mehr auf, es versucht es kleiner
Der Fehlstart im Zug hat den eigentlichen Mangel gezeigt: die ganze neue
Regelung misst **ab dem ersten Bild**. Kommt nie eines, misst sie nichts,
greift nichts — und „Auto" hat sich als das erwiesen, was es wörtlich
heisst: „nimm, was in den Einstellungen steht". Steht dort „Original",
bittet die App über eine Zugverbindung um eine 4K-Datei und wartet
vierzig Sekunden auf etwas, das nie kommen kann.

Statt aufzugeben geht der Watchdog jetzt eine Sprosse tiefer und baut
neu auf — bei Filmen über `restart()`, bei Sendern über den Tuner-Abbau.
Gezählt gegen dasselbe Budget wie die Sicherheitsleine, sonst schickt
eine tote Leitung die App endlos im Kreis.

Scheitert auch das, nennt die Meldung jetzt den Grund und den Weg statt
nur „keine Daten mehr": wer ohne Grenze angefragt hat, soll erfahren,
dass es daran liegt und wo es sich ändern lässt.

Und „Strom" heisst Stream. Zweiunddreissig Stellen, dazu das
Gedächtnis ergänzt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-27 18:30:10 +02:00

43 lines
1.4 KiB
Markdown

# 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.