Enhancement: Readlist and/or favorites (Collections) #76

Closed
opened 2026-04-24 22:57:47 +02:00 by adam · 20 comments
Owner

Originally created by @Jdiesel87 on GitHub (Oct 26, 2021).

It would be nice to be able to add books to a read list(s). I don't know if it makes sense to have both read lists and favorites but they would work essentially the same way, a button to toggle between added/not added. I don't know if I personally would benefit from multiple lists but some users may want the ability to create and name multiple lists which books can be added to. To take things a step further having the option to make lists public (shared with other users on the server) and private (only visible to the user who created it) would be really great.

Sorry lots to digest here, I was just thinking about what was missing from the home page and realized that I was wanting a way to highlight books of interest from my library.

Originally created by @Jdiesel87 on GitHub (Oct 26, 2021). It would be nice to be able to add books to a read list(s). I don't know if it makes sense to have both read lists and favorites but they would work essentially the same way, a button to toggle between added/not added. I don't know if I personally would benefit from multiple lists but some users may want the ability to create and name multiple lists which books can be added to. To take things a step further having the option to make lists public (shared with other users on the server) and private (only visible to the user who created it) would be really great. Sorry lots to digest here, I was just thinking about what was missing from the home page and realized that I was wanting a way to highlight books of interest from my library.
adam closed this issue 2026-04-24 22:57:47 +02:00
Author
Owner

@advplyr commented on GitHub (Oct 29, 2021):

There was some discussion about including an ability to make collections early on. What do you see would be the difference between tagging a group of books and adding them to a list?
I can think of one benefit being that with lists the order would matter, but I don't have a clear idea of what this would look like. Also, lists would be per-user whereas tags right now are stored on the book details.

Can you show in more detail what you are thinking this looks like?

@advplyr commented on GitHub (Oct 29, 2021): There was some discussion about including an ability to make collections early on. What do you see would be the difference between tagging a group of books and adding them to a list? I can think of one benefit being that with lists the order would matter, but I don't have a clear idea of what this would look like. Also, lists would be per-user whereas tags right now are stored on the book details. Can you show in more detail what you are thinking this looks like?
Author
Owner

@Jdiesel87 commented on GitHub (Oct 29, 2021):

I think collections, readlists, playlists and favorites are all the same things. Users will all use them slightly different. If you give them a versatile method the to create custom lists they will find creative ways to use it.

I see it as be being an icon in the book details screen where you can select it to pull up the option to add the current book to either an existing list or create a new list. Sorry for the crudely drawn examples.
1
2

One obstacle I see is that books could be part of multiple lists.

I see the lists being viewed by navigating to a tab on the homescreen where they would reside. There would need to be the option to delete and edit lists as well.

@Jdiesel87 commented on GitHub (Oct 29, 2021): I think collections, readlists, playlists and favorites are all the same things. Users will all use them slightly different. If you give them a versatile method the to create custom lists they will find creative ways to use it. I see it as be being an icon in the book details screen where you can select it to pull up the option to add the current book to either an existing list or create a new list. Sorry for the crudely drawn examples. ![1](https://user-images.githubusercontent.com/14824476/139483125-a6cda800-b6c4-44b6-a87f-6be787da873a.png) ![2](https://user-images.githubusercontent.com/14824476/139483128-cd66e708-79e6-4eef-9046-1794fc72ef1a.png) One obstacle I see is that books could be part of multiple lists. I see the lists being viewed by navigating to a tab on the homescreen where they would reside. There would need to be the option to delete and edit lists as well.
Author
Owner

@Jdiesel87 commented on GitHub (Oct 29, 2021):

The collection workflow from Emby is what I had in mind and might be a little clearer to undstand
Screenshot 2021-10-29 122800
Screenshot 2021-10-29 122829
Screenshot 2021-10-29 122841

@Jdiesel87 commented on GitHub (Oct 29, 2021): The collection workflow from Emby is what I had in mind and might be a little clearer to undstand ![Screenshot 2021-10-29 122800](https://user-images.githubusercontent.com/14824476/139484623-fdde7efc-6cff-4f0e-8035-91b0f87d4592.png) ![Screenshot 2021-10-29 122829](https://user-images.githubusercontent.com/14824476/139484634-bc37d2f6-e87e-43de-a06c-9135573166c5.png) ![Screenshot 2021-10-29 122841](https://user-images.githubusercontent.com/14824476/139484641-fcc152f4-f352-4620-aedc-2d2d4dc0fd64.png)
Author
Owner

@advplyr commented on GitHub (Oct 29, 2021):

This is what I was thinking also. I don't have Emby, can you show me what it looks like when a movie is already in a collection? The icon you drew in your example, would that change if the book was already in a collection?

Also where do you stand on naming it "collections" or "lists". I think I'm leaning towards collections.

@advplyr commented on GitHub (Oct 29, 2021): This is what I was thinking also. I don't have Emby, can you show me what it looks like when a movie is already in a collection? The icon you drew in your example, would that change if the book was already in a collection? Also where do you stand on naming it "collections" or "lists". I think I'm leaning towards collections.
Author
Owner

@Jdiesel87 commented on GitHub (Oct 29, 2021):

With Emby there is no icon, the option to add a item to a collection is buried in the three dot context menu. There is no way to visually tell if an item is part of a collection.

I think the term collections is more universal.

@Jdiesel87 commented on GitHub (Oct 29, 2021): With Emby there is no icon, the option to add a item to a collection is buried in the three dot context menu. There is no way to visually tell if an item is part of a collection. I think the term collections is more universal.
Author
Owner

@p1xelll commented on GitHub (Nov 4, 2021):

First look:
Interactive prototype
Figma

Tomorrow the /collections page will be ready.

@p1xelll commented on GitHub (Nov 4, 2021): First look: [Interactive prototype](https://www.figma.com/proto/YVE3OjdbG39jjffozEC2Ah/abs-collection?node-id=1%3A2&scaling=min-zoom&page-id=0%3A1&starting-point-node-id=1%3A2&show-proto-sidebar=1) [Figma](https://www.figma.com/file/YVE3OjdbG39jjffozEC2Ah/abs-collection?node-id=0%3A1) Tomorrow the /collections page will be ready.
Author
Owner

@advplyr commented on GitHub (Nov 4, 2021):

Beautiful, re-using the bookmarks modal will also speed things up.

Do you find the star ratings useful? I've not personally used them on my servers, but I also don't have many users on my servers. I would like to get some input on how many users would like this feature.

@advplyr commented on GitHub (Nov 4, 2021): Beautiful, re-using the bookmarks modal will also speed things up. Do you find the star ratings useful? I've not personally used them on my servers, but I also don't have many users on my servers. I would like to get some input on how many users would like this feature.
Author
Owner

@p1xelll commented on GitHub (Nov 4, 2021):

I haven't finished the collections modal yet.

Personally, I never use star ratings. But I thought it might be interesting for some users. Then they can filter the books by rating.

@p1xelll commented on GitHub (Nov 4, 2021): I haven't finished the collections modal yet. Personally, I never use star ratings. But I thought it might be interesting for some users. Then they can filter the books by rating.
Author
Owner

@p1xelll commented on GitHub (Nov 5, 2021):

What would you like to see or change there?
Interactive prototype
You can change between pages using flow. You just need to open the sidebar.
Snímka obrazovky 2021-11-05 203440
Everything marked in blue is interactive. Just click on the screen and see what it is.

Edited: Maybe the blue marking is a bit confusing. But I can't fix that. I didn't make everything interactive because Figma is not suitable for that.

Etited 2: You can also use Figma

@p1xelll commented on GitHub (Nov 5, 2021): What would you like to see or change there? [Interactive prototype](https://www.figma.com/proto/YVE3OjdbG39jjffozEC2Ah/abs-collection?node-id=1%3A2&scaling=min-zoom&page-id=0%3A1&starting-point-node-id=1%3A2&show-proto-sidebar=1) You can change between pages using flow. You just need to open the sidebar. ![Snímka obrazovky 2021-11-05 203440](https://user-images.githubusercontent.com/81173399/140568454-4e8a009d-eb8d-44a0-89e1-ef84e1765e14.png) Everything marked in blue is interactive. Just click on the screen and see what it is. Edited: Maybe the blue marking is a bit confusing. But I can't fix that. I didn't make everything interactive because Figma is not suitable for that. Etited 2: You can also use [Figma](https://www.figma.com/file/YVE3OjdbG39jjffozEC2Ah/abs-collection?node-id=0%3A1)
Author
Owner

@advplyr commented on GitHub (Nov 5, 2021):

This is incredible, great job! I was able to figure out the blue actions and see everything just fine.

I love the idea of using the shelf label for the collection name. Do you think this could also work for Series?

Some questions about functionality:

  1. How do you think we should show collections that were shared with you?
  2. What do you think the cover image for the collection should be? It looks like you are showing the first 2 book covers side by side.
  3. On the collection landing page what do you think about using a list view similar to Plex playlist page?

image

This is what it looks like when hovering over a playlist item:

image

@advplyr commented on GitHub (Nov 5, 2021): This is incredible, great job! I was able to figure out the blue actions and see everything just fine. I love the idea of using the shelf label for the collection name. Do you think this could also work for Series? Some questions about functionality: 1. How do you think we should show collections that were shared with you? 2. What do you think the cover image for the collection should be? It looks like you are showing the first 2 book covers side by side. 3. On the collection landing page what do you think about using a list view similar to Plex playlist page? ![image](https://user-images.githubusercontent.com/67830747/140572142-362d08f5-f4a9-4509-9384-d313bc65374a.png) This is what it looks like when hovering over a playlist item: ![image](https://user-images.githubusercontent.com/67830747/140572380-dd717d99-abb9-4c0d-997e-2936a58e6ea3.png)
Author
Owner

@advplyr commented on GitHub (Nov 5, 2021):

I'm not sure how sharing should work for users that are not the owner of the server.
I don't know if a server owner would want all their users to see a list of all the other users. I could be completely wrong about this though, would love some feedback from the server hosts on here.

@advplyr commented on GitHub (Nov 5, 2021): I'm not sure how sharing should work for users that are not the owner of the server. I don't know if a server owner would want all their users to see a list of all the other users. I could be completely wrong about this though, would love some feedback from the server hosts on here.
Author
Owner

@p1xelll commented on GitHub (Nov 5, 2021):

  1. The user can listen to only those books that he has in the library. I meant that if I have a "top 30" collection and I have some other user who is interested in my "top 30" colection. So I can easily share it with him. The books he can't play will be greyed out.

  2. I used two pictures side by side. I thought about using four but it was too big. Only if they cropped out part of the pictures. The user can change the title image I just forgot to add that option.

  3. I first suggested something similar. It looked better but I wanted to simplify the work for you by using the same components. I'll add this variation in there as well.

It may also be for the series.

@p1xelll commented on GitHub (Nov 5, 2021): 1. The user can listen to only those books that he has in the library. I meant that if I have a "top 30" collection and I have some other user who is interested in my "top 30" colection. So I can easily share it with him. The books he can't play will be greyed out. 2. I used two pictures side by side. I thought about using four but it was too big. Only if they cropped out part of the pictures. The user can change the title image I just forgot to add that option. 3. I first suggested something similar. It looked better but I wanted to simplify the work for you by using the same components. I'll add this variation in there as well. It may also be for the series.
Author
Owner

@advplyr commented on GitHub (Nov 5, 2021):

Sharing will need to be contained within the server. Sharing collections across servers will be too difficult to make consistent because a book does not have a single identifier.
Collections will also need to be per-library, so you can't add books from multiple libraries to a collection.
In this case every user shared on the collection would be able to play every book.

When you share a playlist in plex you are sharing it to another user on your server. Plex just uses email addresses so they will send an invite to the user if they aren't already on the server.

@advplyr commented on GitHub (Nov 5, 2021): Sharing will need to be contained within the server. Sharing collections across servers will be too difficult to make consistent because a book does not have a single identifier. Collections will also need to be per-library, so you can't add books from multiple libraries to a collection. In this case every user shared on the collection would be able to play every book. When you share a playlist in plex you are sharing it to another user on your server. Plex just uses email addresses so they will send an invite to the user if they aren't already on the server.
Author
Owner

@advplyr commented on GitHub (Nov 5, 2021):

Alright so I went through Plex testing this out and I was wrong about how sharing works.

Plex uses authentication through their servers, so when you create an account it is on their server. Since every user has 1 account, it makes it easy for them to allow sharing between accounts. The downside is it also means all of your data on Plex is visible on their servers, giving them a lot of data to farm.

I don't think I want to go down that road with audiobookshelf, so I think we need to scrap sharing or think of another way to go about it.

@advplyr commented on GitHub (Nov 5, 2021): Alright so I went through Plex testing this out and I was wrong about how sharing works. Plex uses authentication through their servers, so when you create an account it is on their server. Since every user has 1 account, it makes it easy for them to allow sharing between accounts. The downside is it also means all of your data on Plex is visible on their servers, giving them a lot of data to farm. I don't think I want to go down that road with audiobookshelf, so I think we need to scrap sharing or think of another way to go about it.
Author
Owner

@p1xelll commented on GitHub (Nov 6, 2021):

Update

Redesign of the collection page
Removal of description
Removal of sharing
Added option to change cover image

@p1xelll commented on GitHub (Nov 6, 2021): **Update** Redesign of the collection page Removal of description Removal of sharing Added option to change cover image
Author
Owner

@p1xelll commented on GitHub (Nov 6, 2021):

@advplyr I can invite you to Figma. You'll be able to export icons, CSS, ...

@p1xelll commented on GitHub (Nov 6, 2021): @advplyr I can invite you to Figma. You'll be able to export icons, CSS, ...
Author
Owner

@advplyr commented on GitHub (Nov 6, 2021):

Sure, you can invite advplyr@protonmail.com
It looks like you noticed I already included googles material design icons in the project, so any icons in there are already in the project.
https://fonts.google.com/icons
In a few places I also included other SVG icons.

I like the collection page list, that is what I was thinking.
Why did you remove the description?

@advplyr commented on GitHub (Nov 6, 2021): Sure, you can invite advplyr@protonmail.com It looks like you noticed I already included googles material design icons in the project, so any icons in there are already in the project. https://fonts.google.com/icons In a few places I also included other SVG icons. I like the collection page list, that is what I was thinking. Why did you remove the description?
Author
Owner

@advplyr commented on GitHub (Nov 7, 2021):

Just pushed v1.6.8 where collections are in experimental features. Still a bunch of things left to do, but it is generally usable now. The biggest step remaining is going to be custom cover images because they will need their own directory in /metadata/collections.

image

I think it is really looking and functioning great so far, thanks for your designs!

@advplyr commented on GitHub (Nov 7, 2021): Just pushed `v1.6.8` where collections are in experimental features. Still a bunch of things left to do, but it is generally usable now. The biggest step remaining is going to be custom cover images because they will need their own directory in `/metadata/collections`. ![image](https://user-images.githubusercontent.com/67830747/140629173-cb55329a-0ac9-486a-b702-ac073acfb85d.png) I think it is really looking and functioning great so far, thanks for your designs!
Author
Owner

@p1xelll commented on GitHub (Nov 7, 2021):

I removed the description due to the fact that I think it will be an unused feature. But you can add it.

@p1xelll commented on GitHub (Nov 7, 2021): I removed the description due to the fact that I think it will be an unused feature. But you can add it.
Author
Owner

@advplyr commented on GitHub (Nov 8, 2021):

When I was implementing the Play button on the collection page I realized that the book list should show whether a book is read or not without hovering. I tried a slightly different design to show the read/not read button.
I still need to add the multi-select and edit covers. Testing is appreciated, I think it can be moved out of experimental as soon as it is stable.

This is v1.6.11

@advplyr commented on GitHub (Nov 8, 2021): When I was implementing the Play button on the collection page I realized that the book list should show whether a book is read or not without hovering. I tried a slightly different design to show the read/not read button. I still need to add the multi-select and edit covers. Testing is appreciated, I think it can be moved out of experimental as soon as it is stable. This is `v1.6.11`
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#76