# ABS-Client

> Ein nativer iOS- und macOS-Client für deine selbst gehostete [Audiobookshelf](https://www.audiobookshelf.org/)-Instanz.

---

## 📖 Über die App

**ABS-Client** ist eine native App für iPhone und Mac, die eine direkte Verbindung zu deiner eigenen Audiobookshelf-Serverinstanz herstellt. Du behältst die volle Kontrolle über deine Hörbuch-Bibliothek – ganz ohne Drittanbieter oder Cloud-Abhängigkeit.

---

## 📲 Im App Store erhältlich

ABS-Client ist sowohl für **iPhone** als auch für **Mac** kostenlos im App Store verfügbar:

👉 **[Audiobook ABS Client im App Store öffnen](https://apps.apple.com/ch/app/audiobook-abs-client/id6770326901)**

---

## ✨ Features

### Bibliothek & Inhalte
- 🔗 **Serververbindung** – Verbinde die App mit deiner eigenen Audiobookshelf-Instanz
- 📚 **Bibliotheks-Browser** – Durchsuche deine Hörbücher in Kachel- oder Listenansicht
- 🎙️ **Podcast-Unterstützung** – Episoden direkt aus deiner ABS-Bibliothek wiedergeben
- 🖼️ **Cover-Cache** – Cover werden lokal zwischengespeichert, kein erneutes Laden bei jedem App-Start

### Wiedergabe
- 🎧 **Vollwertiger Player** – Wiedergabe mit Scrubber, Skip-Buttons (15s / 30s / 45s / 60s / 90s konfigurierbar) und Geschwindigkeitsregler (0.75× bis 2.0×)
- 📑 **Kapitel-Navigation** – Springe direkt zu Kapiteln; aktuelles Kapitel wird hervorgehoben
- 🔖 **Lesezeichen** – Markiere beliebige Stellen mit eigenem Namen, synchronisiert mit deinem ABS-Server
- ⏱️ **Einschlaftimer** – Mehrere Modi: Festgelegte Minuten, „Bis Ende des Kapitels" oder „Bis Ende des Hörbuchs"
- 🎚️ **Lockscreen- & Control-Center-Steuerung** – Vollständige Wiedergabesteuerung von außerhalb der App

### Downloads & Offline
- ⬇️ **Offline-Downloads** – Lade Hörbücher und Podcast-Episoden für die Offline-Wiedergabe
- 📊 **Live-Fortschritt** – Echtzeit-Anzeige der heruntergeladenen MB pro Hörbuch
- 🔄 **Hintergrund-Downloads** *(iOS)* – Downloads laufen weiter, auch wenn die App geschlossen oder das Gerät gesperrt ist
- 🎛️ **Parallel oder sequenziell** – Wähle in den Einstellungen ob mehrere Downloads gleichzeitig oder nacheinander laufen sollen
- 📶 **Mobilnetz-Schutz** – Optional Downloads nur über WLAN
- 🔔 **Live Activities** *(iOS)* – Download-Fortschritt direkt im Lockscreen und Dynamic Island

### Hörfortschritt & Verlauf
- 🔄 **Bidirektionale Synchronisation** – Hörfortschritt wird zum Server gepusht und periodisch nachgefragt; bei Konflikten (z. B. anderes Gerät war voraus) wird beim Fortsetzen gefragt
- 📜 **Hörverlauf** *(opt-in)* – Lokales Protokoll deiner Hörpositionen, ideal um nach versehentlichem Verspulen schnell zurückzuspringen
- 💾 **XML-Export** – Hörverlauf als XML exportieren und teilen
- 🌐 **Cross-Device Foreground-Sync** – Beim Zurückkehren in die App wird der Server sofort um aktuelle Daten gefragt

### Sprache & Plattform
- 🇩🇪 **Deutsch** und 🇬🇧 **Englisch** – Vollständig lokalisierte Oberfläche
- 🖥️ **macOS-Optimierung** – Eigene Sidebar-Navigation, Tastatursteuerung und Multi-Window-Support
- 📱 **iOS-Optimierung** – Liquid-Glass-Design, native Sheets und kontextuelle Menüs

---

## 📋 Voraussetzungen

- **iOS:** 26.0 oder neuer (iPhone)
- **macOS:** 26.0 (Tahoe) oder neuer
- Eine laufende [Audiobookshelf](https://github.com/advplyr/audiobookshelf)-Serverinstanz (Version 2.x)

---

## 🚀 Installation

### Aus dem App Store
👉 **[Audiobook ABS Client im App Store öffnen](https://apps.apple.com/ch/app/audiobook-abs-client/id6770326901)**

Der Link funktioniert sowohl für iPhone als auch für Mac — der App Store leitet automatisch zur passenden Version weiter.

### Aus dem Quellcode bauen

```bash
git clone https://git.scarriffle.com/Scarriffle/ABS-Client.git
cd ABS-Client
```

Öffne das Projekt in Xcode, wähle dein Zielgerät und starte den Build.

---

## 🔧 Einrichtung

1. App starten
2. URL deiner Audiobookshelf-Instanz eingeben (z. B. `https://abs.deinserver.de`)
3. Mit deinen Zugangsdaten anmelden
4. Bibliothek auswählen und loslegen

---

## 🤝 Beitragen

Contributions sind willkommen! Wenn du einen Fehler gefunden hast oder eine Idee für ein neues Feature hast, eröffne gerne ein Issue oder einen Pull Request im Repository:

👉 [git.scarriffle.com/Scarriffle/ABS-Client](https://git.scarriffle.com/Scarriffle/ABS-Client)

Bitte achte auf einen sauberen, gut dokumentierten Code-Stil und beschreibe deine Änderungen im PR möglichst nachvollziehbar.

---

## 📄 Lizenz

Dieses Projekt ist lizenziert unter der **GNU General Public License v3.0**.
Das bedeutet: Du kannst den Code frei nutzen, verändern und weitergeben – aber abgeleitete Projekte müssen ebenfalls unter der GPL v3 veröffentlicht werden.

Den vollständigen Lizenztext findest du in der [LICENSE](LICENSE)-Datei.

---

## 📬 Kontakt

Bei Fragen, Feedback oder Problemen:

✉️ [scarriffleservices@gmail.com](mailto:scarriffleservices@gmail.com)

---

> ABS-Client ist ein unabhängiges Community-Projekt und steht in keiner Verbindung zum offiziellen [Audiobookshelf-Projekt](https://github.com/advplyr/audiobookshelf).
