Go to file
Timmy Welch f72ebdb149 Simplify ComicCacher to store a single binary data field and ID(s)
If the ComicCacher is to be a generic cache for talkers it must assume
 very little. Current assumptions:
 - There are issues that can be queried individually by an "Issue ID" and they have a relation to a single series
 - There are series that can be queried individually by an "Series ID" and they have a relation to zero or more issues
 - There are Searches that can be queried by the search term and they have a relation to zero or more series

Each series and issue have a boolean `complete` attribute which is up to the talker to decide what it means.
Data is returned as a tuple ([series, complete] or [issue, complete]) or a list of tuples
An issue consists of an ID, an series ID and a binary data attribute which is up to the talker to determine what it means.
An series consists of in ID and a binary data attribute which is up to the talker to determine what it means.

The data attribute is binary to allow for compression and efficient storage of binary data (e.g. pickle) it is suggested to store it as json or similar text format encoded with utf-8. If the talker is using a website API it is suggested to store the raw response from the server.

All caches automatically expire 7 days after insertion.
2023-08-05 03:02:12 -07:00
.github/workflows Update linux packages in GitHub Actions 2023-06-21 19:47:41 -07:00
build-tools Generate a namespace object for typing settngs 2023-06-09 16:20:00 -07:00
comicapi Convert ComicIssue into GenericMetadata 2023-08-02 09:00:04 -07:00
comictaggerlib Convert ComicIssue into GenericMetadata 2023-08-02 09:00:04 -07:00
comictalker Simplify ComicCacher to store a single binary data field and ID(s) 2023-08-05 03:02:12 -07:00
scripts Update copyright statements to ComicTagger Authors 2023-02-16 17:23:13 -08:00
testing Simplify ComicCacher to store a single binary data field and ID(s) 2023-08-05 03:02:12 -07:00
tests Simplify ComicCacher to store a single binary data field and ID(s) 2023-08-05 03:02:12 -07:00
.gitignore Add temp to .gitignore 2022-12-23 00:09:46 -08:00
.mailmap Automate contributions 2023-02-16 17:13:26 -08:00
.pre-commit-config.yaml Upgrade pre-commit hooks 2023-07-01 23:12:41 -07:00
AUTHORS Update AUTHORS 2023-02-28 06:31:07 +00:00
CONTRIBUTING.md Use tox for building 2023-04-23 01:31:44 -07:00
LICENSE Add LICENSE file 2023-07-01 18:13:38 -07:00
pyproject.toml Apply pre-commit configuration 2022-06-02 18:32:16 -07:00
README.md Use tox for building 2023-04-23 01:31:44 -07:00
release_notes.txt Code cleanup 2022-04-02 14:21:37 -07:00
setup.cfg Generate settngs namespace before formatting 2023-07-28 23:29:39 -07:00
setup.py Use tox for building 2023-04-23 01:31:44 -07:00
todo.txt Code cleanup 2022-04-02 14:21:37 -07:00

CI GitHub release (latest by date) PyPI PyPI - Downloads Chocolatey package PyPI - License

GitHub Discussions Gitter chat Google Group Twitter Facebook

ComicTagger

ComicTagger is a multi-platform app for writing metadata to digital comics, written in Python and PyQt.

ComicTagger logo

Features

  • Runs on macOS, Microsoft Windows, and Linux systems
  • Get comic information from Comic Vine
  • Automatic issue matching using advanced image processing techniques
  • Batch processing in the GUI for tagging hundreds or more comics at a time
  • Support for ComicRack and ComicBookLover tagging formats
  • Native full support for CBZ digital comics
  • Native read only support for CBR digital comics: full support enabled installing additional rar tools
  • Command line interface (CLI) enabling custom scripting and batch operations on large collections

For details, screen-shots, and more, visit the Wiki

Installation

Binaries

Windows, Linux and MacOS binaries are provided in the Releases Page.

Just unzip the archive in any folder and run, no additional installation steps are required.

PIP installation

A pip package is provided, you can install it with:

 $ pip3 install comictagger[GUI]

There are optional dependencies. You can install the optional dependencies by specifying one or more of them in braces e.g. comictagger[CBR,GUI]

Optional dependencies:

  1. ICU: Ensures that comic pages are supported correctly. This should always be installed. *Currently only exists in the latest alpha release *
  2. CBR: Provides support for CBR/RAR files.
  3. GUI: Installs the GUI.
  4. 7Z: Provides support for CB7/7Z files.
  5. all: Installs all of the above optional dependencies.

Chocolatey installation (Windows only)

A Chocolatey package, maintained by @Xav83, is provided, you can install it with:

choco install comictagger

From source

  1. Ensure you have python 3.9 installed
  2. Clone this repository git clone https://github.com/comictagger/comictagger.git
  3. pip3 install .[ICU] or pip3 install .[GUI,ICU]

Contributors

beville
beville
davide-romanini
davide-romanini
fcanc
fcanc
lordwelch
lordwelch
mizaki
mizaki
MichaelFitzurka
MichaelFitzurka
abuchanan920
abuchanan920
AlbanSeurat
AlbanSeurat
rhaussmann
rhaussmann
jpcranford
jpcranford
PawlakMarek
PawlakMarek
Xav83
Xav83
thFrgttn
thFrgttn
tlc
tlc