internetarchive / internetarchive/openlibrary

Support download options for web books

Open
#9,581 7 comments 0 reactions 0 assignees View on GitHub
Lead: @scottbarnes Needs: Breakdown Priority: 3 Theme: Trusted Book Providers Type: Feature Request
Dominant language
Python
Stars
6.7k
Forks
2k
Avg merge
2d 19h
Merged PRs (30d)
138

Description

### Problem

Related: #6585

### A clear and concise description of what you want to happen
Visiting the book page (e.g. http://localhost:8080/books/OL20431791M/Flatland_A_Romance_of_Many_Dimensions) should show download options for web books, to the extent they are available.

### Expected behaviour / screenshots (ex: Figma design screenshots for UI feature)
Visiting a book page with a web book shows, in the left-hand menu, download options appropriate for the web book.

### Additional Context
#6585 adds web books, but the `DirectProvider` class does not support download options.

### Proposal & Constraints

### Which suggestions or requirements should be considered for how feature needs to appear or be implemented?
We need to think about how this would work, and the extent to which consideration of direct book providers needs to be taken into account.

### Leads

### Related files

The former `openlibrary/templates/book_providers/direct_download_options.html` may provide some useful context when implementing this:
```
$def with(url)




$_('Download Options')




```

### Stakeholders

@cdrini


### Instructions for Contributors

- Please [run these commands](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#working-on-your-branch) to ensure your repository is up to date **before** [creating a new branch](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#making-changes-and-creating-a-pull-request) to work on this issue and **each time after** pushing code to Github, because the pre-commit bot may add commits to your PRs upstream.

Contributor guide

Open the contributing guide

Research direction

Start with the book page at /books/OL20431791M/Flatland_A_Romance_of_Many_Dimensions, the DirectProvider class, and the former openlibrary/templates/book_providers/direct_download_options.html template. Determine how available download options for web books and direct book providers should appear in the left-hand menu; done means an eligible web book displays appropriate options.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.