Skip to content
kmworksPublic

About

Full-featured Komga drop-in replacement in Rust: CBZ/CBR/PDF/EPUB, same API and database, plus enhancements. Single static binary, bundled web UI, small footprint.

Topics

Resources

Stars

22 stars

Watchers

2 watching

Forks

Repository files navigation

kmrs

CI Release Docker image License: MIT

Documentation · Installation · Configuration

A full-featured drop-in replacement for Komga in Rust — same library formats, API, and database, plus additional capabilities. It supports CBZ, CBR, PDF, and EPUB, with a bundled web UI in a single static binary — no JVM and a small memory footprint.

kmrs: Keep Manga Reading Simple.

  • Drop-in replacement for gotson/komga: same port (25600), same /config and /data mounts, same KOMGA_* environment variables
  • Data-level compatibility: opens and upgrades existing komga data directories (database.sqlite, tasks.sqlite) in place — and the Java version can still open libraries written by kmrs
  • Library formats: CBZ/ZIP, CBR/RAR, PDF, and EPUB — scanning, metadata extraction, thumbnails, and Komga-compatible page/resource serving (PDF rendering uses libpdfium)
  • API parity: REST /api/**, OPDS v1.2/v2, SSE, Kobo sync, and KOReader progress sync — endpoints, DTOs, pagination, error shapes, and authentication behavior match the Java version
  • Verified against the Java version: byte-for-byte Flyway migrations, a differential test harness comparing ~105 endpoints against a live Java instance, and schema contract tests
  • Efficient by design: no JVM, bounded memory, and container caches that avoid reopening books for every page
  • Beyond Komga: smart lists, reading trackers, CJK cross-search, outbound webhooks, reading statistics, and more

Quick start

docker run -d \
  --name=komga \
  --user 1000:1000 \
  -p 25600:25600 \
  --mount type=bind,source=/path/to/config,target=/config \
  --mount type=bind,source=/path/to/data,target=/data \
  --restart unless-stopped \
  ghcr.io/kmworks/kmrs

The kmweb React web UI (built from webui/ in this repo) is embedded in the binary and served at / out of the box — nothing to configure. Prebuilt binaries (Linux, macOS, Windows; x86_64 and aarch64) are on the releases page; API-only clients like KMReader, KOReader, or Kobo work too.

Documentation

Full documentation lives at kmworks.date/server:

License

kmrs is under the MIT License. The SQL migration files, the OpenAPI document, and the test fixtures are copied from the komga source tree (see NOTICE); everything else is a rewritten implementation. kmrs is not affiliated with the komga project.

About

Full-featured Komga drop-in replacement in Rust: CBZ/CBR/PDF/EPUB, same API and database, plus enhancements. Single static binary, bundled web UI, small footprint.

Topics

Resources

Stars

22 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages