komga
komga copied to clipboard
export metadata to file (ComicInfo or others)
Is your feature request related to a problem? Please describe.
Portability of data is what makes the transition from any existing solution like ComicRack to Komga a lot easier eventually, making sure Komga itself isn't designed to be a final destination (barring any additional effort) would increase trust into the software, assurance that manual meta data edits don't go to waste without further programming skills and promote the concept of user data being easy to move, something which is for example a cornerstone of EU legislature for social media and other cloud services. Not saying this applies here, this is locally hosted software, just that there's a precedent for data portability being a major concern even on a large scale legal level.
Describe the solution you'd like
ComicInfo is the most universally supported exportable format. Anything on top of it, maybe through plugins, idk, would probably help establish a newer, better standard for software that doesn't natively support a database structure. JSON for example? Having options wouldn't be bad, but CI is the most mission critical for now I think.
Describe alternatives you've considered or other apps that can do what you want
See above/see the referenced issue #54
Additional context
Continuation from this thread in response to your suggestion to create a separate issue for easy tracking.
Other types of metadata used by ebooks & digital comic books:
- OPF - In-archive or external XML file. Probably one of the best existing options for external metadata. I've never seen this used outside an Epub or Calibre metadata backups, but there's no reason it couldn't be placed in a cbz (or in the same folder as the archive)
- CoMet - in-archive XML file
- ACBF - in-archive XML file. I'm not aware of any other applications that support ACBF. Possibly because it also supports use without an archive (either referencing external images, or embedding them inline, base64 encoded)
I share @GlassedSilver's concern about portability and metadata lock-in. I've also experienced metadata loss after I had to restart Plex libraries from scratch several times, and work done within the UI had to be redone again. As far as Komga is concerned, if I'm going to spend time organizing series in collections (typically by universe or main character), I want to do this only once. Right now collections can only by added via the UI (like in Plex), so if you crash/lose your Komga database, all the collection organizing work would be lost: https://komga.org/guides/collections.html#adding-series-to-a-collection
I'd specifically like to see support for some sort of metadata file to store collection metadata alongside with other local media assets.
There's no lock-in, there's a rest api that offers all features. The webui uses the api, so any action available in the ui can be done using the api also.
Right, in this case "lock in" is not the right term as we can POST to /api/v1/collections et. al. However, we'd still need to develop our own parsers/writers to make the API calls (not sure what would be the easiest way, Postman scripting maybe?). So in practical terms there's a bit of "UI lock in" if you will, especially for end users who can't code (and even if you can, it's additional work).
Would it make sense for Komga to recognize if there's a collections.json file in the library file system? We'd need a simple way for end users to look up series IDs though in order to reuse the API's schema:
{ "name": "string", "ordered": true, "seriesIds": [ "string" ] }
In the Plex world you typically do this with custom agents and parsers, which comes very handy for non-mainstream content such as video tutorials or anime.
The api is documented using openapi, you can use openapi codegen to generate clients for any language supported.
The api is documented using openapi, you can use openapi codegen to generate clients for any language supported.
Not everyone on github is a developer. :/
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Still a request I'd have.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
unstale please
I would also like too see this.
same here ^^ thanks
+1
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
please unstale, thanks!
I'm also interested in an ability to write/export metadata to ComicInfo.xml. Once The Anansi Project is finalized, I'd also like to be able to export to that too. ComicRack is abandonware, and comictagger development is falling behind. Having this option would be very nice.
To add my opinion to this, having an option to write the metadata to the comic archive would be a godsend. I've been using Mylar to edit the metadata for my comic files but they don't always group things the way I'd like so I have to edit them. I've been using ComicTagger for the manual editing but I store my comics on a media server and ComicTagger crashes when I try and save changes to files over the network. So I inevitably have to copy the files over to my computer, edit them with ComicTagger, then copy them back. Overall its a painful process just to modify the metadata.
And as far as the reasons for writing the metadata to the actual files, I have a few main ones that seem very important.
- If I want to reorganize my collection, any changes I made in Komga to comics whose files I moved around are lost. I've had a few instances where I realize my folder structure is bad, or I just want to rename the folder a series is in, and after doing so I have to re-edit all of the series' in Komga.
- Some comic reader apps rely on the ComicInfo.xml for organizing issues, regardless of what's sent over OPDS by Komga. I'm not sure exactly how OPDS works or what types of information are sent over it, but I do know that in Chunky Comic Reader for iPadOS, when I download comics that don't contain a properly tagged ComicInfo.xml, they all get lumped into "Unknown / Not Tagged" when I group by series.
- It would be nice to not necessarily be tied to this ecosystem. Say I want to copy one of my comic files to an external device that supports ComicInfo directly, or I want to share one with a friend who uses an app that does, it would be nice for all of the work I put into organizing my comics to show up. Plus, as mentioned by @GlassedSilver in #54, if some day a better solution than Komga comes along, or Komga loses support, having all of that metadata in the comic file itself would be necessary to get up and running quickly.
Anyway, that's just my 2 cents. I know that a new standard for the ComicInfo.xml file is in the works from @anansi-project, and I really hope that with that comes the ability to write the resulting fields to the file itself. Of course, that should be up to the user to decide whether or not it happens, but it would be a great feature in my opinion.
I wonder if this is still on the backlog. This missing feature holds me off to using komga. By the way, it holds me also off to use all other competitor solutions. But at least komga has this issue here which give me some hope. Kavita for example is very strict in saying there do not want to write back to the files and we should use other options to edit our metadata. Like @csandman already stated this is much harder than said! So, will komga support this? I mean it already converts zip to cbz files so the "writing something back" logic seams to be already there.
You guessed it...I would love to see this feature! 🙏
I would like to see the feature as well. User portability is important, and having this feature helps to future-proof the user's library against the possibility of komga ceasing support or a better app coming out that you want to import into.
It's possible that komga may implement metadata in their database that isn't supported by comicinfo, but I'd personally be fine with that loss of metadata in a write-to-file since it's not coming out of komga regardless. Just alert the user that the export will not pull out unsupported metadata and leave it at that.
Hi @gotson , would be lovely to get your thoughts on that!