Skip to content

Tagging Engine and File Organization

comicsnow edited this page Oct 10, 2026 · 1 revision

Comics Now! includes an integrated tagging microservice powered by a dedicated Python backend (tagger/app.py).

Multi-Source Metadata APIs

The tagger queries the following providers:

  • ComicVine: Full issue details, writer/artist credits, character appearances, and volume numbers.
  • Metron: Community-maintained open comic database.
  • Grand Comics Database (GCD): Comprehensive historical comic archive.
  • Goodreads & Amazon: Ideal for trade paperbacks, graphic novels, and ISBN lookups.
  • Google Books, Blackwells, Waterstones, LCG: Supplemental publisher and store indicia.

Service Port

The tagger listens on port 5000 by default — configurable via the APP_PORT environment variable (APP_HOST defaults to 0.0.0.0). When embedded, Comics Now! spawns the tagger and proxies to it; change the port under Tag Comics Now! → Settings & Sources → Service Port and the app will spawn and proxy to the new port. For a standalone or sidecar tagger, set APP_PORT and point Comics Now! at the same port, or set TAGGER_SERVICE_URL (or taggerServiceUrl in config.json).

The Tag Comics Now! UI & Matching Workflow

  1. Open the Tag Comics Now! panel from the top bar.
  2. Select a comic or folder to inspect.
  3. The engine extracts the cover image, computes an image perceptual hash (imagehash), and matches it against online covers.
  4. Side-by-Side Review: Displays the candidate match, match confidence percentage, publication year, and cover art.
  5. Click Apply Tags to confirm.

Automatic Renaming & Moving

In the Tag Comics Now! panel → Management tab → Name / Folder sub-tabs, configure automated file organization rules:

  • Naming Pattern: {Series} #{Number} ({Year})
  • Folder Pattern: {Publisher}/{Series} (v{Volume})/
  • When enabled, applying tags automatically moves and renames the file on disk into a clean, uniform directory tree.

Clone this wiki locally