Smart lists that "group by" the collection #24

Closed
opened 2025-12-14 17:09:07 +01:00 by antifuchs · 3 comments
Contributor

I just set up comicOPDS and I'm really happy with it - the metadata handling is leaps and bounds better than YACReaderLibraryServer managed, and I love the "smart lists" function. Which brings me to this issue: It would be really really cool if the server allowed making a smart list that "cuts up" the collection by values in certain fields, for example:

  • A smart list that has comics grouped by Writer or Artist credit
  • One that groups comics by format (single issue / collections)
  • A group per publisher, or series even

All of these can be done manually right now - but it means creating one smart list per "group", which is quite a lot on a large collection.

I just set up comicOPDS and I'm really happy with it - the metadata handling is leaps and bounds better than YACReaderLibraryServer managed, and I love the "smart lists" function. Which brings me to this issue: It would be really really cool if the server allowed making a smart list that "cuts up" the collection by values in certain fields, for example: - A smart list that has comics grouped by Writer or Artist credit - One that groups comics by format (single issue / collections) - A group per publisher, or series even All of these can be done manually right now - but it means creating one smart list per "group", which is quite a lot on a large collection.
FrederikBaerentsen added the enhancement label 2025-12-15 02:02:39 +01:00
Owner

Trying to look at this and why to implement it. I'll get back to you

Trying to look at this and why to implement it. I'll get back to you
Owner

This is now implemented on the dev branch and will be part of version 1.1!

What you can do:

Create a single "dynamic" smart list that auto-generates sub-folders based on any metadata field. Instead of manually making 50 smart lists for each writer, just set Group By: writer and you get a folder for each writer with comic counts.

Example - Browse by Writer:

  • Create smart list "All Writers"
  • Set Group By: writer
  • Optionally add filters (e.g., year >= 2020)

You'll get:

All Writers/
  ├── Brian K. Vaughan (47)
  ├── Ed Brubaker (92)
  ├── Grant Morrison (156)
  └── ...

Example - TPBs by Series:

  • Create "TPB Collection"
  • Group By: series
  • Add filter: format equals "TPB"

Supported grouping fields:

writer, publisher, series, format, year, tags, characters, teams, genre You can combine it with all the existing smart list features - filters, sorting, distinct mode, limits, etc. Check out the updated docs for more examples.

Try it out using dev and let me know how it works for you!

This is now implemented on the `dev` branch and will be part of version 1.1! What you can do: Create a single "dynamic" smart list that auto-generates sub-folders based on any metadata field. Instead of manually making 50 smart lists for each writer, just set `Group By: writer` and you get a folder for each writer with comic counts. Example - Browse by Writer: - Create smart list "All Writers" - Set Group By: writer - Optionally add filters (e.g., year >= 2020) You'll get: ``` All Writers/ ├── Brian K. Vaughan (47) ├── Ed Brubaker (92) ├── Grant Morrison (156) └── ... ``` Example - TPBs by Series: - Create "TPB Collection" - Group By: series - Add filter: format equals "TPB" Supported grouping fields: writer, publisher, series, format, year, tags, characters, teams, genre You can combine it with all the existing smart list features - filters, sorting, distinct mode, limits, etc. Check out the [updated docs](https://gitea.baerentsen.space/FrederikBaerentsen/ComicOPDS/src/branch/develop/docs/smartlists.md#dynamic-smart-lists-auto-grouping) for more examples. Try it out using `dev` and let me know how it works for you!
Author
Contributor

I just upgraded my comicOPDS server and this works perfectly! The only minor annoyance was that to get an all-encompassing list, I had to add a filter criteria that always matches (I used year >= 1000), but that's easy to work with still!

Thanks for this excellent addition!

I just upgraded my comicOPDS server and this works perfectly! The only minor annoyance was that to get an all-encompassing list, I had to add a filter criteria that always matches (I used `year >= 1000`), but that's easy to work with still! Thanks for this excellent addition!
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: FrederikBaerentsen/ComicOPDS#24