Libby Reading App

This new feature allows library users to automatically track goals and earn prizes during seasonal events like Summer Reading.


Public libraries offer summer reading programs, where the goal is to stop the literacy backslide of out-of-school kids and boost enthusiasm in the community for reading.

Patrons of all ages (adults included) can win prizes and awards, usually related to reading amount, depending on the library’s goals/program structure.

<note_text>Disclaimer: This work was pursued as a personal project. I’m not affiliated with Libby.<note_text>


Creating an outline and documenting summer reading progress takes a lot of time - not just for library workers, but also for library patrons trying to track their books. This leads to underutilization of the program.

View Prototype

What I Did

  1. Interviewed librarians and library users to identify frustrations and desires around reading challenges.
  2. Synthesized findings with competitive analyses, personas, affinity maps, and insights.
  3. Analyzed the current Libby design system to inform UI and interaction choices.
  4. Ideated features and brought possible solutions to life in low and high fidelity designs.
  5. Prototyped, tested, and iterated based on a prioritization matrix.


Research and UX/UI Design


80 hours (May 3 - 15, 2023)


Add a Feature


Figma, Zoom, Google Suite



  • Explore how readers currently track their literacy goals and how libraries organize incentivizing events.
  • Assess existing reading and book tracking apps for accuracy and usefulness.
  • Discover ways to increase engagement with library Summer Reading program events.

First, I went to my local library (former workplace) and interviewed 6 people about their reading habits.

Four were library employees, and two were general visitors (a mom and her teenage daughter). I asked about their:

  • Experiences and feelings around Summer Reading and other literacy tracking programs.
  • View and usage of the Libby app.
  • General reading habits.

Next, I conducted a competitive analysis of the top 5 available reading/literacy tracking apps.



After reviewing the exploratory interview notes, I affinity mapped out all of the comments in FigJam. This helped establish overlapping themes.


From my interviews, I focused on two types of users: the parent tracking their family's reading habits, and the librarian offering the reading event to the public.

No items found.



  • How might we make documenting reading times as hands off and simple as possible, so users don’t feel like it’s a chore?
  • How might we make reading tracking more fun and enjoyable, so the user creates positive reading habits?
  • How might we present reading goal information and progress in a visual and digestible format, so users can easily view and report statistics?
  • How might we increase the accuracy of reading goal progress, so no one is short-changed in assessing their goals?
  • How might we make editing and changing reading goals and progress simple, so users can customize their experience to their own motivations?


After pages of brainstorming, I developed three ideas to incorporate into the summer reading event feature.


I established four ways that the user would primarily interact with my three features.

1: The user wants to add a member to their family in the app

2: The user wants to redeem a reading goal incentive.

3: The user wants to view their family's progress in meeting their goals.

4: The user wants to create a new reading time goal for their family.

In the first iteration of wireframes, I had the user able to edit other family member's avatars and names in the app. That over-complicated the process, and I decided that users could only change their own avatars.


I mapped out the existing information hierarchy in blue and purple, and then added my feature pages in orange.

Originally, I’d considered putting the reading goals in the Library page, since the program is sponsored by those organizations. However, that section was already packed full.

Instead, I housed the feature in the Menu (which is the center, most prominent button in the navigation bar), and Timeline (because its’ icon is a clock).


Main Menu Page

I sketched out two “Menu Page” options, and decided to go with option 2, since the Goals and Incentives were more prominent.

I wanted users to be able to see, at a glance, all of their goals, progress, and family members.

"New Goal" Form

To create a custom goal, I added fields for types of materials, time spent, and incentives. I incorporated checkboxes and radio options with pre-selections, so the user has minimal typing responsibilities.

"Add a Family Member" Form

I wasn’t sure if the users should be able to assign their family avatars, so I came up with options with and without that. Ultimately, I decided that only the user should be able to change their own avatar, so it didn’t need to be in the field.

Redeem Incentive

If the user clicks on the completed progress ring in the main page, it would take them directly to their prize.



Style Guide

  • I needed to replicate the current styles, in order to fit my feature seamlessly into the existing interface, so I took screenshots and traced my designs to align perfectly.
  • The Libby icons are very unique. To re-create them, I drew everything out with the Figma pen tool and colored their different states.

UI Kit

Inspired by the Shelf layout, I echoed its' structure of a slightly smaller image on left partnered with spaced text on the right to create the reward and goal card components.

New coordinating personal and family icons were added to the existing design system, as well as timers, checkboxes, keypads, and form fields.


Use Cases

I created four situations to explore in usability testing.

#1:  How can I create a new personal reading goal to win prizes?

I want this to be easy and customizable.

#2:  How can I redeem a prize that I’ve won?

I really want that slice of pizza for hitting my reading goal - how do I get it?

#3:  How can I track how long I’ve been reading, while the book is open?

Can I see the time without exiting the page?

#4: How do I add a New Member to my family?

I want to see their progress, and I’d like to work together with them toward a larger goal.


4 people tested the prototype in half hour recorded Zoom sessions. Two were parents, one was a librarian, and one was a general library user.

Usability Scorecards

I watched the test recordings, and then filled out detailed spreadsheets for each participant.
Timing the tasks and asking for ratings  added quantitative data points.

A snippet from the scorecards.

Task Completion Rates

  • Task 1 (success < 4 min): 5/5
  • Task 2 (success < 1 min 30 secs): 5/5
  • Task 3 (success < 1 min): 5/5
  • Task 4 (success < 30 sec): 5/5
No items found.

Impact/Effort Matrix

To determine priority iterations for my narrow timeframe, I mapped out the testers' comments. The gray post-its were given more weight, as they were suggested by more than one person.


Goals on the main event page

New family member page

Family Goal

Goal form

Reading timer



Next Steps

It would be useful to test out the new changes with real family and patron information, to see if the structure works well when more than one user is involved.

Libby uses aqua balloons throughout their existing app, to indicate tooltips. When you click them, they're animated to pop and display helpful messages. This would be ideal to integrate into the new feature, because it's a fun way to coach a user through a new interface.

Since Libby digital materials can be opened in Kindle, ideally the goals could also be tracked in that interface. This could, perhaps, be in the form of a widget.

What I Learned

Replicating the UI patterns from an existing app is detail-oriented, and I referenced the Google Chrome developer settings for the app frequently, to establish matching spacing and fonts. I learned a lot about ways to establish information hierarchy, discovered what the previous design team prioritized, and simplified my own content. Creating matching UI also meant that I got a lot of practice using the Figma pen tool.

I really enjoyed building off of an established system. It was like putting a puzzle together.