- Multi-server vault: Save unlimited Komga servers with password or API key authentication.
- Cloud-drive-like offline: Background downloads with Live Activity on iOS. Offline policies (manual, latest, all) per series. Progress syncs when connection restores.
- Browse + dashboards: Search, filters, grid/list layouts. Customizable dashboard sections per library.
- Readers: DIVINA (LTR/RTL/vertical/Webtoon) with spreads, zoom, tap zones, and exports. EPUB with custom fonts/themes, pagination, TOC navigation, and incognito mode.
- Admin tools: Metadata editing, scans, task management, and live metrics via SSE.
- Caching: Three-tier caches (pages, books, thumbnails) with adjustable limits and auto-cleanup.
- Shared SwiftUI scenes cover browsing, reading, dashboards, and admin tasks across iPhone, iPad, Mac, and Apple TV.
- SwiftData stores Komga instances, libraries, and custom fonts so server profiles, cache budgets, and dashboard preferences stay local per device.
- Services centralize API access, authentication, caching, SSE subscriptions, and error handling for consistent behavior on every platform.
- Local storage keeps profiles, recent activity, and cached downloads so switching servers does not reset your state.
- Prerequisites: iOS 17.0+, macOS 14.0+, tvOS 17.0+, Xcode 15.0+.
- Clone and open the project:
git clone https://github.com/everpcpc/KMReader.git cd KMReader open KMReader.xcodeproj - Build and run on your target device or simulator, then enter your Komga server URL and credentials.
Build helpers (optional):
make build-ios,make build-macos,make build-tvosfor device builds.make build-ios-ci,make build-macos-ci,make build-tvos-cifor code-signing-free simulator builds.make releasearchives/exports all platforms; seeMakefilefor archive/export targets.
tvOS currently supports DIVINA. EPUB and Webtoon modes are available on iOS/iPadOS/macOS.
- Requires Komga 1.19.0 or later.
- Works with Komga API v1 and v2 (authentication, libraries/series/books, reading progress/pages, collections, and read lists).
- SSE keeps dashboards and task analytics synchronized with toggles for auto-refresh and connection notifications.
- Verbose API logging is available in Xcode Console or Console.app (process
Komga, subsystemKomga, categoryAPI). - Sample entry:
📡 GET https://your-server.com/api/v2/users/me ✅ 200 GET https://your-server.com/api/v2/users/me (45.67ms)
- Handoff support
- Live Text / automatic page translation
Released under the terms of the LICENSE file.
Join the discussion on Discord.
Made with ❤️ for the Komga community ⭐ Star this repo if it helps you keep your library in sync!