internetarchive / internetarchive/openlibrary
Expanding Books "List" section to include Reading Log cards
- Dominant language
- Python
- Stars
- 6.7k
- Forks
- 2k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 138
Description
### Feature Request
This issue is for @ragipidavid
### Problem / Opportunity
Over the past few months, we've helped improve the Books Page Lists section by:
Implementing a new beautiful card design that shows up to 3 books from a list
We've added follow buttons
The problem / opportunity is many more patrons put books on their Reading Log than on Lists. SO: Many book pages show nothing in that Lists section even when dozens of people may have marked the book as Want to Read.
Proposal:
On the books page, async, we query for (username, work, shelf_id, datetime) and get a list of the last 3 patrons to add these books to their shelves.
We create a card with up to 3 covers based on this book and two others that the patron has shelved -- maybe ignore shelves that only have one book?
The card shows text based on the Reading Log type, e.g. "Already Read" and has follow buttons
This would async show up under the Lists section as a partial
One reason why this feature is impactful is we currently only have a social preview for Lists and not for Reading Logs (which are essentially generic lists that are used most frequently).
### Proposal
### Breakdown
### Related files
Refer to [this map of common Endpoints](https://github.com/internetarchive/openlibrary/wiki/Endpoints):
*
### Requirements Checklist
Checklist of requirements that need to be satisfied in order for this issue to be closed:
* [ ]
### Stakeholders
*
### Instructions for Contributors
* **Before** [creating a new branch](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#making-changes-and-creating-a-pull-request) or pushing up changes to a PR, please first [run these commands](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#working-on-your-branch) to ensure your repository is up to date, as the pre-commit bot may add commits to your PRs upstream.
Contributor guide
Research direction
Start by reviewing the existing Books page Lists-section implementation and the linked common Endpoints map; the issue names no concrete files or tests. Done requires an agreed design and a working asynchronous Reading Log card section with the described patron, cover, shelf-type, and follow-button behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100