/Perdoo

Perdoo's goal is to help sort and organize your comic collection by using the information stored in metadata files inside the comic archives.

Primary LanguagePythonMIT LicenseMIT

Perdoo

PyPI - Python PyPI - Status PyPI - Version PyPI - License

Rye Pre-Commit Ruff

Github - Contributors

Perdoo is designed to assist in sorting and organizing your comic collection by utilizing metadata files stored within comic archives.
Perdoo standardizes all your digital comics into a unified format (cb7, cbt, or cbz).
It adds and/or updates metadata files using supported services.
Unlike other tagging tools, Perdoo employs a manual approach when metadata files are absent, prompting users to enter the necessary Publisher/Series/Issue details for search purposes.

Installation

Pipx

  1. Ensure you have Pipx installed: pipx --version
  2. Install the project: pipx install perdoo

From Source

  1. Ensure you have a supported version of Python installed: python --version
  2. Clone the repository: git clone https://github.com/Buried-In-Code/Perdoo
  3. Install the project: pip install .

Execution

  • Perdoo <arguments>

Arguments

Argument Type Description
--force bool Forces the sync of archives, regardless of when they were last updated.
--version bool Displays the version of Perdoo running.
--debug bool Displays extra/debug messages while running.

Supported Formats

Input Extensions

  • .cbr
  • .cbt
  • .cbz
  • .cb7 (Requires installing cb7 dependencies: pip install perdoo[cb7])

Output Extensions

  • .cbt
  • .cbz (Default)
  • .cb7 (Requires installing cb7 dependencies: pip install perdoo[cb7])

Metadata Files

Services

File Organization

Series Naming

Series with a volume greater than 1 will display its volume in the title.

Comic Naming

The files are named based on the format of the comic:

  • Default/Comic: {Series Title}_#{Issue Number}.cbz
  • Annual: {Series Title}_Annual_#{Issue Number}.cbz
  • Digital Chapter: {Series Title}_Chapter_#{Issue Number}.cbz
  • Hardcover: {Series Title}_#{Issue Number}_HC.cbz
  • Trade Paperback: {Series Title}_#{Issue Number}_TP.cbz
  • Graphic Novel: {Series Title}_#{Issue Number}_GN.cbz

Collection Folder Structure

Collection Root
+-- Publisher
|  +-- Series
|  |  +-- Series_#001.cbz
|  |  +-- Series_Annual_#01.cbz
|  |  +-- Series_Chapter_#01.cbz
|  |  +-- Series_#01_HC.cbz
|  |  +-- Series_#01_TP.cbz
|  |  +-- Series_#01_GN.cbz
|  +-- Series-v2
|  |  +-- Series-v2_#001.cbz
|  |  +-- Series-v2_Annual_#01.cbz
|  |  +-- Series-v2_Chapter_#01.cbz
|  |  +-- Series-v2_#01_HC.cbz
|  |  +-- Series-v2_#01_TP.cbz
|  |  +-- Series-v2_#01_GN.cbz

Socials

Social - Fosstodon
Social - Matrix