Author Archives: elizabethmays

Celebrating Our Community in 2025

Highlights From the 2025 Open Library Community Celebration

This year, staff, fellows, and volunteers made a number of improvements to Open Library. Here are some highlights of contributors’ accomplishments in 2025, as presented in the annual Community Celebration.

  • Ray Berger, volunteer Developer Experience Lead celebrated his fifth year with Open Library, having reviewed and merged more than 100 pull requests in 2025. This year Ray launched https://docs.openlibrary.org, a new searchable portal for developer documentation. To improve website performance, Ray upgraded the Open Library Search APIs to use FastAPI, a more performant, modern web framework. He has also helped modernize the code base to make it easier for developers to contribute. 
  • GSoC Engineering Fellow Sandy Chu worked with staff members Drini Cami and Mek to enable on-the-fly translations in BookReader. Now, books in BookReader can be translated into more than 40 languages. This project also enabled read-aloud capabilities in BookReader, which helps to close the accessibility gap for international readers. 
  • Engineering volunteers David Ragipi and Krishna Gowsami redesigned book lists to add a “follow” button next to usernames. The feature increased the number of patrons following each other from 182 to more than 3K followers in 2025.
  • Under Mek’s mentorship, GSoc Engineering Fellow Roni Bhakta developed a prototype of Lenny, a self-hostable digital library for storing and lending EPUBs. Lenny gives libraries and individuals a lightweight way to host and securely lend the EPUBs they own.
  • Engineering Fellow Ben Deitch worked with Drini to develop a new trending algorithm built on Solr that uses hour-by-hour statistics to give patrons fresh, timely books that are getting high interest at any given moment on Open Library. This feature replaced trending views that changed infrequently and also gives insight into what’s trending in a given subject.
  • Engineering Fellow Stef Kischak worked with Drini to develop a script that scrapes Wikimedia APIs for Wikisource ebooks to import. Stef also made efforts to improve the import pipeline and identify orphaned editions to edit.
  • Librarian Fellow Jordan Frederick imported reading levels metadata that improved the K-12 reading collection. Jordan also fixed metadata, split wrongly merged records, and created tutorials for Open Library patrons. 
  • New librarian volunteer Catherine Gosztonyi created the still-growing Canada Reads Awards collection on Open Library. 
  • Internet Archive Staff Member Lisa Seaberg celebrated the 684 volunteer librarians in the Open Library community Slack channel. Volunteer librarians improve the catalog by adding metadata, author info, images, and collections. Lisa also recognized multiple superlibrarians who reviewed hundreds of thousands of merge requests, curated special collections, and mentored librarians in training.
  • Volunteer communications lead Elizabeth Mays, with team Nick Norman, Ella Cuskelly, and Jordan Frederick, doubled the number of blog posts published in 2025 and streamlined a process for writing and approving blog posts. The group also defined standard starter tasks for future volunteers toward projects that will enable more frequent social content. 
  • Staff member Drini Cami highlighted the work of the developer community on a unified read button, language-aware autocomplete and carousels, full-text list search, new librarian features, Wikipedia links on author pages, and Wikidata integration. Drini presented staff improvements such as a data-quality tool that lets librarians see which popular books are missing metadata, streamlined special access for patrons with qualifying print disabilities, grid view, and security improvements to prevent cyberattacks. 

Watch the replay of our 2025 Community Celebration or these slides to learn more about these upgrades. 

Previous Community Celebrations

This is Open Library’s sixth Community Celebration to recognize contributors, who come from more than 20 countries. Catch up on past years’ events at these links:

2024, 2023, 2022, 2021, 2020

Get Involved

If you’d like to get involved, indicate your interest in volunteering with Open Library in this interest form. We’ll be in touch to connect you to the community Slack and weekly call. 

Save the Date: 2025 Open Library Community Celebration 

Each year since 2020, we’ve hosted a virtual celebration to honor the many global contributors who make the Open Library project possible and continuously improve the experience for our patrons. 

This year’s Open Library Community Celebration will be held virtually on Tuesday, Nov. 4, at 9 a.m. PDT. 

Volunteers, staff, patrons and friends of the library are invited to RSVP here to get the link.

Last year was marked by more than 500,000 books being removed from the library, cyber security attacks, and power outages. Our response has been to focus on doing more with less: making the books we have more useful, making our contributors more effective, and targeting our efforts to the underserved communities who rely on our services most.

Celebrate with us as we present:  

  • Personal success stories
  • New improvements for our library patrons
  • A sneak peek at our 2026 roadmap
  • Open Library’s strategic path forward

Also, check out previous years’ community celebrations to learn more about other recent victories: 2024, 2023, 2022, 2021, 2020.

Looking forward to inviting you to this year’s celebration!

What’s Trending on Open Library?

A major update to the Open Library search engine now makes it easy for patrons to find books that are receiving spikes of interest.

You may be familiar with the trending books featured on Open Library’s home page. Actually, you might be very familiar with them, because many seldom change! Our previous trending algorithm approximated popularity by tracking how often patrons clicked that they wanted to read a book. While this approach is great for showcasing popular books, the results often remain the same for weeks at a time.

The new trending algorithm, developed by Benjamin Deitch (Open Library volunteer and Engineering Fellow) and Drini Cami (Open Library staff and senior software engineer) uses hour-by-hour statistics to give patrons fresh, timely, high-interest books that are gaining traction now on Open Library.

This improved algorithm now powers much of the Open Library homepage and is fully integrated into Open Library’s search engine, meaning: 

  • A patron can sort any search on Open Library by trending scores. Check out what’s trending today in Sci-fi, Romance, and Short-reads in French.
  • A more diverse selection of books should be displayed within the carousels on the homepage, the library explorer, and on subject pages.
  • Librarians can leverage sort-by-trending to discover which high-traffic book records may be impactful to prioritize.

Sorting by Trending

From the search results page, a patron may change the “Relevance” sort dropdown to “Trending” to sort results by the new z-score trending algorithm:

The Algorithm

Open Library’s Trending algorithm is implemented by computing a z-score for each book, which compares each book’s: (a) “activity score” over the last 24 hours with (b) the total “activity score” of the last 7 days.

Activity scores are computed for a given time interval by adding the book’s total human page views (how often is the book page visited) with an amplified count of its reading log events (e.g. when a patron marks a book as “Want to Read”). Here, amplified means that a single reading log event has a higher impact on the activity score than a single page view.

All of the intermediary data used to compose the z-score is stored and accessible from our search engine in the following ways:

For Developers

While the trending_z_score is the ultimate value used to determine a book’s trending score on Open Library, developers may also query the search engine directly to access many of the intermediary, raw values used to compute this score.

For instance, we’ve been experimenting with the trending_score_daily_[0-6] fields and the trending_score_hourly_sum field to create useful ways of visualizing trending data as a chart over time:

The search engine may be queried and filter by:

  • trending_score_hourly_sum – Find books with the highest accumulative hourly score for today, as opposed to the computed weekly trending score.
  • trending_score_daily_0 through trending_score_daily_6 – Find books with a certain total score on a previous day of the week.
  • trending_z_score:{0 TO *] – Find books with a trending score strictly greater than 0. Note that this is using Lucene syntax, so squiggly brackets {} can be used for an exclusive range, and square brackets [] for an inclusive range.

The results of these queries may be sorted by:

  • trending – View books ordered by the greatest change in activity score growth first. This uses the trending_z_score.
  • trending_score_hourly_sum – View books with the highest activity score in the last 24 hours

We’d love your feedback on the new Trending Algorithm. Share your thoughts with us on bluesky.

Connecting K-12 Students With Books by Reading Level

We recently improved the relevance of our Student Library collection by adding more than 10,000 reading levels to borrowable K-12 books in our search engine.

Screenshot of the Pre-K & Kindergarten and Grade 1 reading levels on Open Library.

What are Reading Levels?

In the same way a library-goer may be interested in finding a book on a specific topic, like vampires, they may also be interested in narrowing their search for books that are within their reading level. The readability of a book may be scored in numerous ways, such as analyzing sentence lengths or complexity, or the percentage of words that are unique or difficult, to name a few.

For our purposes, we choose to incorporate Lexile scores—a proprietary system developed by MetaMetrics®. Lexile scores are widely used within school systems and have a reliable scoring system that is accessible and well documented.

While the goal of our initiative was to add reading levels specifically for borrowable K-12 books within the Open Library catalog, Lexile also offers a fantastic Find a Book hub where teachers, parents, and students may search more broadly for books by Lexile score. We’re grateful that Lexile features “Find in Library” links to the Open Library so readers can check nearby libraries for the books they love!

Screenshot of Lexile's Find a Book hub.

Before Reading Levels

Before Open Library had reading level scores, the system used subject tags to identify books according to grade level. Many of these categories were noisy, inaccurate, and had high overlap, making it difficult to find relevant books. Furthermore, with grade level bucketing, there was no intuitive way to search for books across a range of reading levels.

Searching for Books by Reading Level

Now, lexile score ranges like “lexile:[500 TO 900]” can be used flexibly in search queries to find the exact books that are right for a reader, with results being limited by grade levels. https://openlibrary.org/search?q=lexile%3A%5B700+TO+900%5D

Putting It All Together

By utilizing these lexile ranges, we’ve been able to develop a more coherent and expansive K-12 portal experience where there are fewer duplicate books across grade levels.

We expect this improvement will make it easier for K-12 students and teachers to find appropriate books to satisfy their reading and learning goals. You can explore the newly improved K-12 student collection at http://openlibrary.org/k-12.

What Do You Think?

Is there something you miss from the previous K-12 page? Is the new organization more useful to you? Share your thoughts on bluesky.

Credits

This reading level import initiative was led by Mek, the Open Library program lead, with assistance from Drini Cami, Open Library senior software engineer. The project received support from Jordan Frederick, an Open Library intern who shadowed this project as part of her Master’s in Library and Information Science (MLIS) degree.