BookLore icon indicating copy to clipboard operation
BookLore copied to clipboard

[Feature Request] Attach supplemental files to books

Open eNBeWe opened this issue 5 months ago • 4 comments

I have multiple types of books that have supplemental materials, in addition to the main PDF file:

  • TTRPG rulebooks with additional maps (image files), errata (additional pdf) or "Web Enhancements" (also another PDF).
  • Programming books with Code snippets (usually a ZIP file)

I would like to be able to not store these items as a separate "Thing" in the Library, but attach it to the main book. Calibre does something like this with "Data Files", but doesn't display them in the UI, just buried in the metadata menu. Kavita tracks "series" as the primary item and has multiple books in a series. AudioBookShelf can have multiple files for a book and can mark the primary element.

Could be something like this: Image or maybe under the summary?

eNBeWe avatar Jun 29 '25 15:06 eNBeWe

Oh, turns out this feature is already mentioned as an "advanced use case" in #221

eNBeWe avatar Jun 29 '25 16:06 eNBeWe

I assume these supplemental files (maps, code, errata, etc.) are typically stored in the same folder as the main book file? The challenge with Booklore right now is that it doesn’t maintain or rely on folder structures, it treats each book file as an independent entity during import.

So in scenarios where users have a flat directory (i.e., all books in one folder), it would be difficult to determine which files are supplemental and which are standalone books. That raises a few questions: • Would you expect Booklore to auto-detect these supplemental files based on naming conventions or file extensions? • Should this feature be opt-in per library or per import? • Would it help if Booklore let you manually attach supplemental files to a book post-import?

I’m trying to understand how best to design this so it works well for both organized and flat file structures. Let me know how you envision using it, and I’d be happy to explore it further!

acx10 avatar Jun 29 '25 17:06 acx10

Right now I usually have the supplemental files sitting next to the main file, just with some addition to the filename: Image

In my (not processed with any management tool) collection these files now share a folder "by topic", i. e. "D&D Forgotten Realms" or "Python". But I am very much willing to adjust my folder structure in the future for better handling.

Your questions are very valid. I hadn't really thought about the workflow, yet.

  • In a setup with individual folders per Book it would be nice to have Booklore autodetect the "connection" of the books. Maybe the largest file (or most pages) would be the "primary" file and the others are supplementals?
  • In a flat setup this isn't really feasible to do automatically.
  • Having a manual "attach to other book" feature would be totally fine (by me)

EDIT: I tested around with Kavita. I have one book in the collection Image and there are 3 PDFs in there Image

To get this working I had to mess with the PDF metadata of the files and make them multiple issues of the same "Series". This whole "Everything is a Series" behavior of Kavita is a crutch here.

eNBeWe avatar Jun 29 '25 18:06 eNBeWe

I don't think auto-detection can work well in this use case, but I can see users manually linking books togeter (i.e. "Add as supplemental" button), that would hide the supplemental materials from the main view and link the book and its supplemental materials together.

tbabej avatar Jun 29 '25 22:06 tbabej

I personally feel that multimedia (Non-Ebook/text) handling is currently out of scope for Booklore. Other selfhosted programs such as Nextcloud can handle groups of files like this and allow viewing them through a webapp.

Also, the series function can effectively handle supported "supplemental" file types. Using series entries like 1.01, 1.1 and 1.21.

Image

clockwinder avatar Jul 20 '25 14:07 clockwinder

@adityachandelgit I think is done by my PRs: #870

werwolfby avatar Aug 29 '25 06:08 werwolfby

Implemented in https://github.com/booklore-app/booklore/pull/870

acx10 avatar Sep 26 '25 03:09 acx10