internetarchive / openlibrary

One webpage for every book ever published!
https://openlibrary.org
GNU Affero General Public License v3.0
5.08k stars 1.32k forks source link

Project Proposal: Speedy Edits (Enhancing Client-Side Performance for Librarians) #9121

Open RayBB opened 4 months ago

RayBB commented 4 months ago

Objective: A great patron experience starts with a great catalogue. Librarians make that possible. This project is to improve the experience for librarians by optimizing client-side performance through pre-caching strategies, specifically targeting areas identified as critical by the librarian community.

Background: The Open Library (OL) team is diligently working on server-side improvements, which are crucial for overall performance. However, there is an opportunity to significantly enhance the client-side experience, particularly for librarians, by leveraging service workers and pre-caching techniques. This proposal aims to address some of the most pressing issues identified by librarians, with a focus on improving load times and responsiveness.

I'd like to propose that in May I work on a small project to improve the speed of OL, specifically for librarians.

As I've worked on improving our use of service workers (#8930) I'm getting a vision for how we could improve the rest of the experience client side. It starts with a focus on librarians. I asked the librarians what they felt the most problem areas were.

Obvious candidates

A few areas we could improve with client side (pre)caching:

Not in scope

Some things that cannot be fixed with this client side work:

Why focus on librarians?

Proposal & Constraints

A note on implementation: I think this most of these can be done extremely simply, with less than 100 lines of code that are easy to understand. No new dependencies. It may sound like a band-aid but even if OL was down to sub-second response times this will still cause the site to feel much faster.

Here's what I need:

Constraints

As always, I look forward to hearing what the staff have to say and improving the Open Library experience for everyone!

Stakeholders

Realmbird commented 4 months ago

Might be willing to attempt this problem