This commit is contained in:
2026-03-11 14:54:08 +00:00
parent 3b66ca64f8
commit aabb28ee06
66 changed files with 1199 additions and 904 deletions

124
docs/gui/dashboard.md Normal file
View File

@@ -0,0 +1,124 @@
# Dashboard
Das Dashboard ist die **Betriebszentrale** für laufende Jobs.
## Aufbau der Seite
Die Bereiche erscheinen in dieser Reihenfolge:
1. `Hardware Monitoring`
2. `Job Queue`
3. `Skript- / Cron-Status`
4. `Job Übersicht`
5. `Disk-Information`
---
## 1) Hardware Monitoring
Zeigt live:
- CPU (gesamt + optional pro Kern)
- RAM
- GPU-Auslastung/Temperatur/VRAM
- freien Speicher in den konfigurierten Pfaden
Wichtig für den Betrieb:
- Hohe Speicherauslastung oder fast volle Zielpfade früh erkennen
- über `Settings` aktivierbar/deaktivierbar (`hardware_monitoring_*`)
## 2) Job Queue
Zwei Spalten:
- `Laufende Jobs`
- `Warteschlange`
Mögliche Aktionen:
- Queue per Drag-and-Drop umsortieren
- Queue-Job entfernen (`X`)
- zusätzliche Queue-Elemente einfügen (`+`):
- Skript
- Skriptkette
- Wartezeit
Hinweis:
- `Parallel` zeigt das aktuell konfigurierte Parallel-Limit (`pipeline_max_parallel_jobs`).
## 3) Skript- / Cron-Status
Zeigt:
- aktive Ausführungen (Skripte, Ketten, Cron)
- zuletzt abgeschlossene Ausführungen
Mögliche Aktionen:
- laufende Ketten: `Nächster Schritt`
- laufende Einträge: `Abbrechen`
- Historie der Aktivitäten: `Liste leeren`
## 4) Job Übersicht
Kompakte Jobliste mit Status, Fortschritt, ETA. Klick auf einen Job klappt die Detailsteuerung auf.
Im aufgeklappten Zustand erscheint die Karte `Pipeline-Status` mit allen zustandsabhängigen Aktionen.
### Zustandsabhängige Hauptaktionen
| Zustand | Typische Aktion |
|---|---|
| `DISC_DETECTED` / `IDLE` | `Analyse starten` |
| `METADATA_SELECTION` | `Metadaten öffnen` |
| `WAITING_FOR_USER_DECISION` | Playlist wählen und `Playlist übernehmen` |
| `READY_TO_START` | `Job starten` |
| `READY_TO_ENCODE` | Tracks/Skripte prüfen, dann `Encoding starten` |
| laufend (`ANALYZING`/`RIPPING`/`ENCODING`) | `Abbrechen` |
| `ERROR` / `CANCELLED` | `Retry Rippen`, `Disk-Analyse neu starten` |
Zusätzlich je nach Job:
- `Review neu starten`
- `Encode neu starten`
- `Aus Queue löschen`
### Titel-/Spurprüfung (`READY_TO_ENCODE`)
Im selben Block siehst du:
- Auswahl des Encode-Titels
- Audio-/Subtitle-Trackauswahl
- User-Preset-Auswahl
- Pre-/Post-Encode-Skripte und Ketten
- Preview des finalen HandBrakeCLI-Befehls
## 5) Disk-Information
Zeigt aktuelles Laufwerk und Disc-Metadaten (`Pfad`, `Modell`, `Disc-Label`, `Mount`).
Aktionen:
- `Laufwerk neu lesen`
- `Disk neu analysieren`
- `Metadaten-Modal öffnen`
---
## Wichtige Dialoge im Dashboard
### Metadaten auswählen
- OMDb-Suche + Ergebnisliste
- manuelle Eingabe als Fallback
- `Auswahl übernehmen` startet den nächsten Pipeline-Schritt
### Abbruch-Bereinigung
Nach Abbruch kann Ripster optional fragen, ob erzeugte RAW- oder Movie-Dateien gelöscht werden sollen.
### Queue-Eintrag einfügen
Erstellt gezielt einen Skript-, Ketten- oder Warte-Eintrag an einer bestimmten Queue-Position.

39
docs/gui/database.md Normal file
View File

@@ -0,0 +1,39 @@
# Database (Expert)
`/database` ist eine erweiterte Ansicht für Power-User und Recovery-Fälle.
## Zugriff
- Route direkt aufrufen: `/database`
- nicht Teil der Standard-Navigation
## Bereiche
### 1) `Historie & Datenbank`
Tabellarische Jobansicht mit:
- ID, Poster, Medium, Titel
- Status
- Start/Ende
Aktionen im Detaildialog entsprechen weitgehend der Seite `Historie` (inkl. Re-Encode, Review-Neustart, OMDb-Zuordnung, Dateilöschung).
### 2) `RAW ohne Historie`
Listet RAW-Ordner, die keinen zugehörigen Job-Eintrag haben.
Aktionen:
- `RAW prüfen` (Scan der konfigurierten RAW-Pfade)
- `Job anlegen` (Orphan-RAW in Historie importieren)
## Typischer Einsatz
- nach manuellen Dateioperationen
- nach Migrationen oder Recovery
- wenn RAW-Dateien vorhanden sind, aber kein Historieneintrag existiert
## Vorsicht
Diese Seite erlaubt Eingriffe mit direkter Auswirkung auf Datenbestand und Historie. Vor Lösch- oder Importaktionen Pfade und Zieljob sorgfältig prüfen.

62
docs/gui/history.md Normal file
View File

@@ -0,0 +1,62 @@
# Historie
Die Seite `Historie` ist für Suche, Prüfung und Nachbearbeitung bestehender Jobs.
## Hauptansicht
Filter und Werkzeuge:
- Suche (Titel/IMDb)
- Status-Filter
- Medium-Filter (`Blu-ray`, `DVD`, `Sonstiges`)
- Sortierung
- Listen-/Grid-Layout
Jeder Eintrag zeigt:
- Poster, Titel, Jahr, IMDb
- Medium-Indikator
- Status
- Start/Ende
- Verfügbarkeit von RAW/Movie
- Ratings (wenn OMDb-Daten vorhanden)
Klick auf einen Eintrag öffnet die Detailansicht.
---
## Job-Detaildialog
Bereiche:
- Film-Infos + OMDb-Details
- Job-Infos (Status, Pfade, Erfolgsflags, Fehler)
- hinterlegte Encode-Auswahl
- ausgeführter HandBrake-Befehl
- strukturierte JSON-Blöcke (OMDb/MakeMKV/MediaInfo/EncodePlan/HandBrake)
- Log-Ladefunktionen (`Tail`, `Vollständig`)
## Typische Aktionen im Detaildialog
- `OMDb neu zuordnen`
- `Encode neu starten`
- `Review neu starten`
- `RAW neu encodieren`
- `RAW löschen`, `Movie löschen`, `Beides löschen`
- `Historieneintrag löschen`
- bei Queue-Lock: `Aus Queue löschen`
## Wann welche Aktion?
| Ziel | Aktion |
|---|---|
| Metadaten korrigieren | `OMDb neu zuordnen` |
| mit gleicher bestätigter Auswahl neu encodieren | `Encode neu starten` |
| Titel-/Spurprüfung komplett neu berechnen | `Review neu starten` |
| aus vorhandenem RAW erneut encodieren | `RAW neu encodieren` |
| Speicher freigeben | Dateilöschaktionen |
## Logs
- `Tail laden (800)` für schnelle Fehleranalyse
- `Vollständiges Log laden` für vollständige Nachverfolgung

24
docs/gui/index.md Normal file
View File

@@ -0,0 +1,24 @@
# GUI-Seiten
Ripster hat drei Hauptseiten in der Navigation plus eine Expert-Seite.
## Seitenüberblick
| Seite | Zweck |
|---|---|
| [Dashboard](dashboard.md) | Live-Betrieb: Pipeline, Queue, Aktivitäten, Disc-Infos |
| [Settings](settings.md) | Konfiguration, Skripte, Ketten, Presets, Cronjobs |
| [Historie](history.md) | abgeschlossene/laufende Jobs durchsuchen und nachbearbeiten |
| [Database (Expert)](database.md) | tabellarische Rohsicht inkl. Orphan-RAW-Import |
## Empfohlene Nutzung im Alltag
1. **Start eines neuen Jobs:** `Dashboard`
2. **Regeln/Automatisierung anpassen:** `Settings`
3. **Ergebnisse prüfen oder Jobs nachbearbeiten:** `Historie`
4. **Sonderfälle/Recovery:** `Database`
## Hinweise zur Navigation
- `Dashboard`, `Settings`, `Historie` sind direkt in der Kopfnavigation.
- `Database` ist als Expert-Route verfügbar: `/database`.

92
docs/gui/settings.md Normal file
View File

@@ -0,0 +1,92 @@
# Settings
Die Seite `Settings` steuert Konfiguration und Automatisierung.
## Tabs im Überblick
| Tab | Zweck |
|---|---|
| `Konfiguration` | alle Kernsettings (Pfade, Tools, Monitoring, Metadaten, Queue, Benachrichtigungen) |
| `Scripte` | einzelne Bash-Skripte verwalten und testen |
| `Skriptketten` | Sequenzen aus Skript- und Warte-Schritten bauen |
| `Encode-Presets` | benutzerdefinierte Presets für das Review im Dashboard |
| `Cronjobs` | zeitgesteuerte Skript-/Kettenausführung |
---
## Tab `Konfiguration`
Wichtiges Bedienmuster:
1. Werte ändern
2. `Änderungen speichern`
3. bei Bedarf `Änderungen verwerfen` oder `Neu laden`
Zusätzlich:
- `PushOver Test` sendet eine Testnachricht
- Änderungen werden erst nach Speichern wirksam
- Tool-Preset-Felder bieten HandBrake-Presetauswahl direkt im Formular
## Tab `Scripte`
Funktionen:
- Skript anlegen, bearbeiten, löschen
- Skript testen (`Test`)
- Reihenfolge per Drag-and-Drop
Praxis:
- Reihenfolge ist wichtig, weil ausgewählte Skripte später sequentiell abgearbeitet werden.
- Testresultate zeigen Exit-Code, Dauer und stdout/stderr.
## Tab `Skriptketten`
Funktionen:
- Kette anlegen/bearbeiten/löschen
- Kette testen
- Reihenfolge der Ketten per Drag-and-Drop
Im Ketten-Editor:
- Bausteine links (`Warten`, vorhandene Skripte)
- Schritte rechts per Klick oder Drag-and-Drop hinzufügen
- Schrittreihenfolge im Canvas ändern
## Tab `Encode-Presets`
Ein Preset bündelt:
- optional HandBrake-Preset (`-Z`)
- optionale Extra-Args
- Medientyp (`Universell`, `Blu-ray`, `DVD`, `Sonstiges`)
Verwendung:
- Diese Presets erscheinen später im Dashboard im Review (`READY_TO_ENCODE`).
## Tab `Cronjobs`
Funktionen:
- Cronjob anlegen und bearbeiten
- Quelle wählen: Skript oder Skriptkette
- Cron-Ausdruck validieren
- `Jetzt ausführen`
- Logs je Cronjob anzeigen
- `Aktiviert` und `Pushover` toggeln
Hilfen:
- Beispiele für Cron-Ausdrücke direkt im Dialog
- Link zu `crontab.guru` im Editor
---
## Empfehlung für stabile Nutzung
1. Erst `Konfiguration` sauber setzen
2. dann Skripte/Ketten testen
3. danach Cronjobs aktivieren