a816dcb27adc19a2b2912fc7a0f63e82947e473d
wordarr
Sonarr/Radarr-Style Request- & Import-Manager für Ebooks, Comics/Mangas und Audiobooks.
Funktionsweise
- Anfragen: Im Web-UI per Titel/Autor/ISBN suchen (Ebooks: Open Library · Audiobooks: Audible · Manga: AniList) oder manuell anlegen. Beim Request wählst du die Ziel-Library (z.B. deine 8 Bookorbit-Libraries oder die 3 Audiobookshelf-Libraries english/adult/kids). Der Titel erscheint als Missing. Gehört ein Audiobook-Treffer zu einer Serie, legt „Ganze Serie…" alle Folgen auf einmal an (Folgennummer + echter Titel von Audible, optional auf einen Folgenbereich eingegrenzt). Audible hat keine Serien-Abfrage — wordarr sammelt die Folgen über mehrere Suchläufe ein; sollte eine fehlen, zeigt der Dialog die Lücke an.
- Download-Ordner: wordarr überwacht keinen Downloader aktiv — du legst Dateien selbst in den Download-Ordner (
/mnt/downloads). - Import missing: Im Tab Import den Ordner scannen. wordarr schlägt per Fuzzy-Matching Datei→Request-Zuordnungen vor (bei Serien zählt die Folgennummer im Ordnernamen plus der Serienname im Pfad,
???undFragezeichengelten als dasselbe); du bestätigst oder korrigierst. Über 🔍 lässt sich zu einem Ordner direkt eine Anfrage suchen — eine führende Folgennummer (017 - Titel) wird dabei aus der Suchanfrage genommen, weil Audible sonst schlechter trifft, und stattdessen als Band/Folge übernommen. Beim Import wird die Datei nach dem Namensschema der Library umbenannt und verschoben. Ordner mit mehreren Audio-Dateien werden als ein Audiobook behandelt (Titel - Part 01.mp3, …). Auch Ordner, die in Disc-Unterordner (CD,CD1,CD 2,Disc 3,Teil 1) aufgeteilt sind, gelten als ein Audiobook — der Ordnername darüber liefert den Titel, die Parts werden über alle Discs hinweg durchnummeriert. Unterordner ohne Audio (Cover, Scans, Booklets) werden dabei ignoriert. Liegen die Teile eines Mehrteilers dagegen nebeneinander (100 - Toteninsel Teil 1,… Teil 2, …), markierst du sie und klickst Ausgewählte zusammenfassen — sie werden als ein Hörbuch mit durchlaufenden Parts importiert (✂️ löst das wieder auf).
Setup (Docker)
docker compose up -d --build
# Web-UI: http://localhost:8787
docker-compose.yml anpassen: /mnt/downloads und die Library-Roots so mounten, dass die in wordarr konfigurierten root_path-Werte im Container existieren. Download-Ordner und Libraries sollten auf demselben Mount liegen, sonst wird das Verschieben zum Kopieren+Löschen (funktioniert, dauert nur länger).
| Env | Default | Beschreibung |
|---|---|---|
WORDARR_DOWNLOAD_DIR |
/mnt/downloads |
Gescannter Download-Ordner |
WORDARR_CONFIG_DIR |
/config |
Ablage der SQLite-DB |
Namensschemata
Pro Library konfigurierbar (Tab Libraries), Platzhalter: {Author} {Authors} {Title} {Year} {Series} {Volume}.
Defaults:
- Ebook:
{Author}/{Title} ({Year})/{Author} - {Title} - Audiobook:
{Author}/{Title}/{Title} - Comic:
{Series}/{Series} - Band {Volume}
Entwicklung
python3 -m venv .venv && .venv/bin/pip install -e '.[dev]'
.venv/bin/pytest
WORDARR_CONFIG_DIR=./config WORDARR_DOWNLOAD_DIR=/mnt/downloads .venv/bin/uvicorn wordarr.main:app --port 8787
Releases
1
v0.1.0 - First release
Latest
Languages
Python
57.5%
JavaScript
32.1%
HTML
6.6%
CSS
3.7%
Dockerfile
0.1%