Documentation

Sublogue usage and setup

Sublogue is a lightweight, open source tool that enriches subtitle files with metadata and plot summaries. It keeps timing intact, respects safe insertion windows, and lets you choose the metadata provider per scan or per folder.

This page mirrors the README but adds extra context, limits, and setup notes so you can move from install to first scan without guesswork.

Quick checklist

  • Install the container and map /config + /media volumes.
  • Enable integrations and add API keys where required.
  • Scan a folder and review matches before applying.
  • Use per-folder rules for language and formatting differences.

Features

Sublogue focuses on safe subtitle enrichment. It never shifts existing timecodes, and only inserts content when there is a safe gap at the start or end of the file.

Metadata injection

Pull plot, runtime, ratings, and credits from OMDb, TMDb, TVmaze, or Wikipedia and insert them in a clean, readable format.

Safe timing

Sublogue refuses to insert if there is not enough gap, so subtitle timing stays intact.

Folder rules

Override metadata source, language, and formatting per directory for mixed media libraries.

Web UI

Scan folders, batch process results, and track history from a lightweight Svelte UI.

Integrations

Each provider has a different signup and usage policy. Wikipedia is strict by design: exact title matches with year validation are required to reduce false matches from an open encyclopedia.

Provider Signup or API key Rate limits Notes
OMDb Get an API key Free tier has a daily cap Best for movie matching
TMDb Request an API key Per-second rate limit Great for localization and posters
TVmaze View API docs Polite usage limits No API key required
Wikipedia MediaWiki API No hard limits, be polite Strict title matching

Screenshots

The interface is designed for fast scans and quick metadata validation. These screenshots show the scan results and settings panels.

Scan results Settings panel

Getting started

Sublogue runs as a single container. Map /config for settings and /media for subtitles, then open the web UI at http://localhost:5000.

Docker Compose

Create data/ and media/ folders next to your compose file.

version: "3.9"
services:
  sublogue:
    image: ghcr.io/ponzischeme89/sublogue:latest
    container_name: sublogue
    restart: unless-stopped
    environment:
      - TZ=Pacific/Auckland
    volumes:
      - ./data:/config
      - ./media:/media
    ports:
      - "5000:5000"

Unraid

Use the bundled template and map host paths into /config and /media.

/mnt/user/appdata/sublogue -> /config

/mnt/user/appdata/sublogue/media -> /media

Komodo

Create a new stack and attach your external network.

version: "3.9"
services:
  sublogue:
    image: ghcr.io/ponzischeme89/sublogue:latest
    container_name: sublogue
    ports:
      - "5000:5000"
    environment:
      - TZ=Etc/UTC
      - PUID=1000
      - PGID=1000
    volumes:
      - /volume1/Docker/sublogue/data:/config
      - /volume1/Media:/media
    restart: unless-stopped
    networks:
      - npm_network
networks:
  npm_network:
    external: true

Limitations

  • API limits vary per provider and can throttle large scans.
  • Metadata gaps appear when providers do not have a title or plot.
  • Only TMDb supports localization. OMDb and TVmaze are English-first.
  • Long plots are inserted as-is. TVs may split them across screens.
  • Only .srt files are supported.
  • Reprocessing a file can insert multiple plot blocks.

Roadmap

  • More UI themes and high contrast variants
  • Poster and backdrop previews in results
  • Duplicate plot detection and auto-avoidance
  • Automatic backoff and retry logic
  • Short plot mode for long summaries
  • Expanded localization for plots and cast
  • Subtitle format support beyond SRT
  • Optional local cache for metadata lookups

Support

If Sublogue helps your library, consider starring the repo or sharing it with someone who cares about clean subtitles. Bug reports and feature requests are welcome.