janeczku / calibre-web

:books: Web app for browsing, reading and downloading eBooks stored in a Calibre database
GNU General Public License v3.0
12.54k stars 1.32k forks source link

[Feature Request] Smart Shelves #2619

Open HStep20 opened 1 year ago

HStep20 commented 1 year ago

Is your feature request related to a problem? Please describe. A common request and frustration comes with how shelves are managed. It is a very manual process, and there have been quite a few ideas of how to best manage them. This is doubly frustrating for Kobo users as having to manually add books to shelves adds a manual step in what could be a fully end-to-end automated process of getting->organizing->reading books on the device. If I read a book, and want to update my 'read' shelf, I have to go to advanced search, search for all where 'Read' is YES, and add them all to the shelf.

2370 has linked a bunch of issues which all fall into this same category of 'organization and syncing' with shelves, but I believe this can cover most of those desires into one single feature.

Describe the solution you'd like I believe that a system like PLEX does it best with their 'smart collections'/'smart playlists'. Building a 'smart shelf' using advanced search parameters to delineate what should be on the shelf and what shouldn't will keep shelves in sync as new books are added. If I set up a 'smart shelf' with a filter of 'Read is YES', then any time a new book is 'Read', it will automatically be added to the collection.

Describe alternatives you've considered An alternative could be an API Endpoint for adding books to shelf using the Advanced Search. If I can write an external script which provides a search query and run it on a cronjob to automatically add books to the shelf every day, I'd be happy with that. However, for less technical people, having a way to do it in the UI seems like it would be best.

darylf commented 1 month ago

Hi all,

I wanted to express my support for this feature request. The addition of Smart Shelves would be beneficial. For example, I have created custom columns for Genre and Length. I'd love to make a Smart Shelf for something like "Long Science Fiction Novels" that dynamically populates. This could also supplement the "Saved Search" feature request (#1129) but should be displayed distinctly differently to the end user.

Implementing Smart Shelves would significantly enhance the user experience by keeping our shelves dynamically updated without manual intervention. It would also make Calibre-Web more appealing to a broader user base. I hope to see it in a future update!

iroQuai commented 1 month ago

I too would benefit tremendously from dynamic shelves, and I think the proposed solution would be a good way. Too bad I have no coding skills whatsoever...