Modules

The server plays. The modules do the rest.

KROMA's core is playback and catalog. Everything past that is a separate program the server installs, starts and supervises. It asks for a capability and runs whichever module provides it. Install what you use, remove what you do not.

What a module actually is

Its own process

A module is a native binary that runs beside the server on its own local port, not a plugin loaded into it. One that crashes, hangs or is uninstalled cannot take playback down with it.

A capability, not a name

The server asks for a capability: an indexer, a download client, an embedder. The supervisor answers with whoever provides it. Nothing hard-codes which module that is, so installing one later needs no rebuild and no restart of anything else.

Its own release train

Each module is versioned and published on its own tag, so a fix to the indexers ships without touching the server, and the store shows an update for that module alone.

The official catalog

Pinned into every KROMA install. Each entry below is read from the official registry when this page is built.

Embeddings

v0.3.1

Content embeddings for recommendations and semantic search.

mDNS discovery

v0.3.1

mDNS / DNS-SD advertising so LAN clients find the server automatically.

Release parser

v0.3.2library

Scene / P2P release-name parsing and scoring for the acquisition stack.

Remote access

v0.3.3

Public HTTPS access: the share / Quick Connect URL plus an optional managed Cloudflare Tunnel connector. Disable it to hide the page + routes.

Whisper transcription

v0.3.1

In-process Whisper subtitle transcription (candle).

qBittorrent engine

v0.3.5

qBittorrent WebUI as a download sub-engine for the Downloads module. Toggle it to add/remove qBittorrent from the download-client picker.

needs torrents

Torznab indexers

v0.3.2

External Torznab / Newznab indexers (Jackett, Prowlarr).

needs indexer

Transmission engine

v0.3.3

Transmission RPC as a download sub-engine for the Downloads module. Toggle it to add/remove Transmission from the download-client picker.

needs torrents

VPN

v0.4.3

Managed WireGuard bridge (any provider) that torrent traffic routes through, with a live seal test. Disable it to stop the bridge and hide its page + routes.

needs vpn

Indexers

v0.4.6

Native Cardigann indexer engine: searches trackers from community YAML definitions, no external Torznab aggregator.

needs engine · proxy

Acquisition

v0.3.7

The acquisition feature: interactive/manual release search, quality scoring, grab + import, and the automatic wanted-list pass. Rides on the Downloads engine and the indexers. Disable it to remove search/grab/auto and hide the settings page.

needs search · db · grab · torrents

Torrent downloads

v0.6.4

The embedded librqbit download engine + the downloads queue. Transmission and qBittorrent are their own engine sub-modules that plug into this one.

needs client · torrent-fetch · db · proxy · indexer

Catalog read on 2026-09-03

Browse the registry

How installing one goes

  1. 01

    Open Admin → Modules and pick one from the store.

  2. 02

    KROMA downloads the bundle for your platform, verifies its sha256 and unpacks it.

  3. 03

    It starts the module, mounts its pages in the interface, and wires it to whatever needs its capability.

Registries, and what is checked

The official catalog is pinned, and an operator can add their own. An added registry must be https, the official one always wins an id clash, and every bundle is sha256-verified against the catalog before it is unpacked. A module that asks for a newer server than yours is not offered at all.