internetarchive / internetarchive/openlibrary

Simplify Trusted Book Providers integration

Open
#10,251 4 comments 0 reactions 1 assignee Claimed by @cdrini View on GitHub
Lead: @cdrini Priority: 2 Theme: Trusted Book Providers Type: Epic Type: Feature Request
Dominant language
Python
Stars
6.7k
Forks
2k
Avg merge
2d 14h
Merged PRs (30d)
126

Description

### Proposal

A simplified Trusted Book Providers integration would mean that providers are added by adding the equivalent of json or yml entries to a registry, as opposed to manually adding new html files and classes for new providers.

There may be cases where a new mapper class is required between the ID / naming / url schemes of a provider and Open Library, however this should hopefully become the exception rather than the norm.

### Justification

We have lots of trusted book providers pending evaluation and it would be great to arrive at a point where open librarians and contributing engineers can implement these solutions (and make it more trivial to review).

If done correctly, this could potentially result in dozens of new partner platforms that we can link out to, increasing access to tens of thousands of open access books.

### Breakdown

#### Requirements Checklist

* [ ] Add a new `provides: list[Acquisition]` field to an identifier in openlibrary/plugins/openlibrary/config/edition/identifiers.yml , and construct a `BookProvider` class from the identifier dict/yaml . This should use the `@@@` key like the `url` field to allow us to dynamically construct the acquisitions from the identifier.

#### Related files

*

#### Stakeholders

*


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

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.