Repository navigation
Library Layout
ZornTaov edited this page Oct 11, 2026
·
2 revisions
How a library is arranged, and where a comic's archive goes when you do not say.
update_comics.py finds comics by their mirror_metadata.json, so any arrangement works. The default is:
Comics/
CBZs/ what your reader points at
MyComic.cbz
SomeAuthor/
TheirComic.cbz
Uncompressed/ the loose pages the scraper works against
MyComic/
0001_page.jpg
mirror_metadata.json
SomeAuthor/
TheirComic/
Keep archives in their own tree if you read over SMB, or Perfect Viewer and similar readers index every
folder of loose pages as a comic. It also lets rsync pull CBZs/ alone to a phone or Chromebook.
-
Archive location without
--cbz-path: (1) an archive already beside the output folder, so nothing is orphaned; (2) the mirror path under a siblingCBZs/, soUncompressed/A/BbecomesCBZs/A/B.cbz; (3) beside the folder. Chaptered comics get a folder of archives; see Packing. -
Nesting: comics can be grouped by author or site;
--max-depth(default 5) sets how deep the updater looks. Dot-folders such as.replacedand.uploadsare skipped. -
Moving:
outputandcbz_pathare stored relative to the library root, so the library can move. To move one comic inside it, under its author for instance, use Move to another folder in the web page's Edit dialog. Moving only the pages folder by hand leaves the archive or chapter archives where they were, so the next packing writes a second set. The updater does notice the folder no longer matchesoutputand corrects it rather than scraping a fresh copy.
ZornCoMix is licensed under the PolyForm Noncommercial License 1.0.0. Based on a script by AChillVamp; see NOTICE.
Getting started
Running it
Reading
Archives and chapters
Reference