internetarchive / internetarchive/openlibrary

Expanding Books "List" section to include Reading Log cards

Open
#11,461 0 comments 0 reactions 0 assignees View on GitHub
Lead: @jimchamp Needs: Assignee Check-in Needs: Breakdown Needs: Response Priority: 3 Type: Feature Request
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

Image

### 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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.