diora-web/tui/README.md
marwin f63bd1f879 TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients
Python + Textual, unter tui/. Liest EPUBs aus einem Bibliotheksordner,
zeigt Kapitel als Fließtext, j/k/Pfeiltasten zum Scrollen, n/p für
Kapitelwechsel. Fortschritt wird lokal (progress.json via platformdirs)
nach demselben "furthest wins"-Prinzip wie diora's Web-Reader gespeichert,
damit ein Sync-Layer gegen die künftige diora-API später ohne Rewrite
andocken kann. Vorerst rein lokal, kein Server-Kontakt, keine
Verschlüsselung.
2026-08-15 16:04:18 +02:00

1.5 KiB

diora-tui

Lokaler EPUB-Reader im Terminal — die erste Stufe einer TUI-Version von diora.

Läuft komplett offline gegen eine lokale Bibliothek aus .epub-Dateien und merkt sich den Lesefortschritt pro Buch (progress.json im plattformüblichen Datenverzeichnis, z.B. ~/.local/share/diora-tui/ unter Linux, via platformdirs). Der Fortschritt wird — genau wie im Web-Reader von diora (siehe books/models.py, save_progress) — nur vorwärts überschrieben ("furthest wins"), damit ein älterer/gestaffelter Lauf nie eine bereits weiter gelesene Position zurücksetzt.

Sobald die diora-Sync-API für E-Book-Fortschritt steht, bekommt dieses Tool einen Sync-Layer, der progress.json gegen den Server abgleicht. Bis dahin ist alles rein lokal — keine Verschlüsselung, kein Server-Kontakt, keine Kenntnis von diora-Accounts.

Setup

cd tui
pip install -e .

Nutzung

diora-tui --library ~/Books   # Standard: ~/Books

Tastenkürzel:

  • /k, /j — zeilenweise scrollen
  • n / ] — nächstes Kapitel, p / [ — vorheriges Kapitel
  • Enter — markiertes Buch aus der Bibliothek öffnen
  • Escape / q — zurück zur Bibliothek (im Reader) bzw. beenden (in der Bibliothek)

Grenzen der aktuellen Version

  • Nur EPUB, kein PDF (diora selbst unterstützt beides).
  • Text wird pro Kapitel als Fließtext ohne Bild-/Layout-Rendering dargestellt.
  • Fortschritt ist rein lokal; es gibt noch keinen Login/Sync gegen eine diora-Instanz.