I've always used book trackers
but they all didn't fit me.
So I've decided to make my own.
Shelfr - a book tracker with challenges, achievements, community and categorizing.
This is not a reader!
Development time
March 2024 - November 2024
Roles
Table of contents




Shelfr
A book tracker of my dreams
I. Discovery phase
Competitor Analysis
The market has many apps, but only few of them are good.
From my analysis, only one app — Storygraph
— stands out without obvious issues,
making it my benchmark.
I'll be using it as a key reference.
Two other apps are usable but have tolerable issues.
Almost every app on the market have problems:
Cluttered design
Limited functionality
Outdated visuals
Poor user experience
Lags
Core features that are essential across all apps and should be included in mine:
Book tracker
Statistics
Collections / lists
Achievements
Recommendations
Storygraph app

Great app!
Search works instantly. Adding a book is very fast, by only one action. Statistics and challenges are fun. Very precise recommendations
❤️
Turn app

It takes 8+ steps just to add a book to a list
Bookshelf app

Explore tab is the same for everyone, with zero personalization
Bookmory app

Poor contrast, unclear input fields and information fields, unreadable walls of text.
Too many features, making it a Swiss-army-knife type app
Goodreads app

Outdated UI, a home page that doesn’t show your books but instead highlights friends activity
App name
Storygraph
Goodreads
Bookmory
Bookshelf
Turn
Audience, k
700
14000
700
700
500
Rating
4.5
4.3
4.8
4.8
—
Book tracker
Good
Mediocre
Bad
Mediocre
Bad
Recommen…
Good
Good
N/A
Bad
N/A
Statistics
Good
Bad
Good
N/A
Mediocre
Collections
N/A
Mediocre
Mediocre
Good
Bad
Community
Good
Good
N/A
Mediocre
N/A
App info
Features
Around 350 participants who consider themselves regular readers took the survey.
The majority of English-speaking audience
uses Goodreads, while the Russian-speaking audience prefers self-built trackers,
with Livelib coming in second place.
Both audiences highlighted approximately the same
Tracking of Books Read
Sorting into Folders
Notes and Quotes
Personalized Recommendations
+ Reading StatisticsReading Calendar
Community
Challenges and Achievements
Lags
Poor design
Lack of books
Insufficient or too many features
Do you read books in any format?
Do you use any services to track books you’ve read, reading time, or pages you’ve read?
Please specify the trackers that you use
What features in such services are the most important to you?
Is there a feature of a book tracker that you need but haven’t seen anywhere yet? If so, what is this feature?
Why don’t you use book trackers?
Why the services that are available on the market are not suitable for you?
*The survey is non-linear.
🇬🇧 50% of English-speaking readers use book trackers
🇷🇺 25% of Russian-speaking readers use book trackers
UX Survey
Survey questions
Desired Features
Main issues with existing apps
Potential audience
Potential features
Why don’t you use
book trackers?
Is there a feature of a book tracker that you need
but haven’t seen anywhere yet? If so, what is this feature?
I’m not interested
in tracking books
I have not yet found a service
that would completely suit me
29.2%
70.8%
Four respondents participated in the interviews.
User Interview
General:
Aim to read daily
Recommend books to friends and subscribers
Follow recommendations from friends/trusted sources
Take notes and save quotes
Write reviews
Track reading indirectly (reader app / physical bookshelf)
Individual (noted by 1-2 respondents):
"It annoys me when book covers have spoilers or reveal important details"
“I enjoy writing reviews and summaries”
“I don’t like reading just one book at a time”
“I dislike having a reason to check my phone — it’s distracting”
“I feel indifferent about a list of books they’ve read”
Reading habits of respondents:
This information makes a community-based recommendations essential.
Interviews also revealed that a community section, review-writing feature, and reading reminders are must-haves.
Two key insights:
Respondents like
to recommend books
to others through reviews, summaries, notes
Respondents are more likely to read a book recommended by a friend or a trusted source
Statements:
"I really liked the book, so I decided to write a review — not just to share it with others, but also for my own satisfaction."
"Once in a while, I have to give a full lecture on a book or even take an exam on it, so yeah, I take notes."
"I used to take notes by writing down quotes, but I got tired of it."
"I tried writing on paper, but I can't read my own handwriting."
"I buy a book, like it, hear about it, learn something new, and add it to my queue — then I get around to reading it two years later."
"I try to ignore all reviews. If someone recommends something, I ask for the bare minimum description."
"I find books spontaneously. For example, I’m scrolling through YouTube, a video pops up about Lucius Annaeus Seneca, I keep watching, and then — bam — turns out he’s a philosopher, and I might as well read his work."
"Sometimes I come across information online, and sometimes I just stumble upon books. Like, I found Hermann Hesse’s Demian through a recommendation in Tokyo Ghoul."
"Lately, I’ve started reading historical literature."
"I always end up with a massive backlog that just keeps piling up. Either someone recommends something, or I suddenly get interested in a topic — psychology, physics, whatever — and start looking for books on it."
"If one person says, 'You should read this,' that’s enough for me. I’ll think, 'Okay, seems like a decent book.' I don’t really form my own opinion in advance — I just check the overall number of reviews. A little push is all I need to start reading."
"I read books every day in general."
"Sometimes I write in my blog. I post in my channels whenever I feel like it — not always, but I try."
"If I come across an interesting quote, I make a note of it somewhere and later post it in my blog."
"I don’t keep a list of all the books I’ve read."
"I found a philosophy book list on a university website."
"Every evening, before bed, I read for about an hour."
"My e-reader lets me highlight and save quotes, and I also share them with friends."
"I can see what I’ve read in my e-reader."
"I usually don’t read reviews — reading is a personal experience for me."
"I try to read only physical books, but I do read manga on my phone."
"I only recommend books to friends."
"In a way, I write my own reviews — I process what I’ve read in my head and try to extract the meaning that stood out to me."
"I almost never pay attention to reviews. I’m more likely to just read the summary on the back cover."
"I take notes while reading to help me remember things."
"I enjoy reading in general — I like fiction, and of course, philosophy books, since they’re directly related to my profession and way of life."
"I read in all formats, but I love physical books."
"I enjoy browsing secondhand bookstores."
"I respect both physical and digital books."
"Writing reviews is a fascinating activity — I genuinely enjoy it."
"What’s the point of saving quotes if you have no one to share them with?"
"I'm more used to paper — my eyes get less tired, and it's nicer to hold something physical in my hands."
"It's easier to remember things, and I can just share my opinion. Being heard is nice too."
"Notion is very convenient, a notebook is very convenient, and I enjoy writing with a pen."
"You come to class, and the teacher says, ‘What a tragic fate he had...’ Why did they tell me that? It ruined all the emotions I got from the book. They stole my reading experience—I hate that."
"I don’t keep a list of books I’ve read. I don’t really need it. I don’t care much about the number of books I’ve finished."
Event
Action
Emotional Attachment
Emotion, Negative Context
Prioritization
Feature
Value
Effort
Score
Search
13
8
16,25
Collections
13
8
16,25
Book tracker
20
13
15.38
Recommendations
20
20
10
Achievements
8
8
10
Statistics
8
20
4
*I need a team for a proper prioritization. So that’s a theoretical one.
Based on the research, present a potential user journey and possible touchpoints, resulting in a hypothetical Customer Journey Map (CJM) with well-thought-out scenarios.
A full life cycle of the user. From not being aware to leaving the app after a long period of using.
It covers Customer Actions, Goals and Expectations, Touchpoints, Customer Questions, Barriers, Pain Points, Positive Aspects, Emotions and Current Experience, Engagement, Influencing Agents, KPI
It’s too big to fit here.
You can check the full CJM in Miro file:
A person who reads or tries to read daily.
They love book recommendations from friends, enjoy advising others, and discussing what they've read, with specific genre preferences. They have a large queue of books to read "someday."
They dislike spoilers and can get distracted by their phone. They write reviews when they have something meaningful to say.
Age: 20-25, either a student or working.
Customer Journey Map
Goal
Content
Persona
IA is based on the data gathered through
Competitor Analysis, Survey, Interviews
and on my preferences.
Informational Architecture
This is a shortened version.
And it’s a mess, sorry.
The full version is much clearer,
includes a legend
and detailed descriptions
of each section. ↓
Legend
User Flows
Sign-up
1/15
←
→

Wireframes
Wireframes are based
on the Informational Architecture
and User Flows
They’re pretty much
detailed and usable,
only lacking UI

Main Page
Log Reading
Challenges
Library



Finished List

Finished List

Achievements

Notifications

Writing a Review




Want to Read List
Categorizing
Other’s List



Book Page
Search


User Testing
I’ve made a prototype and tested it on 4 respondents.
Respondents completed
most tasks without difficulties.
Respondents completed five guided scenarios:
Registration
and Initial Actions
Complete onboarding
Register
Add a book
to "Currently Reading"
Mark a reading entry
for the streak
Mark as "Read"
Write a review
for the book
Recommendations Based on Identified Issues:
Create a mini-onboarding
for categorizing
Make lists visually distinct
from individual books
Redesign the edit window for others' lists
to reduce mental load
Use a separate screen for selecting
challenge duration
Test the remaining flows
Develop branding and UI
Follow a User
Open search
Enter the username
Open profile
or follow directly
from search
Follow
Categorize Books
in “Want to Read”
Go to the library,
open the list
Enable categorizing
Organize books
Add tags to books
Start a Challenge
and Earn an Achievement
Select challenge difficulty and start
Read to update
the streak
Earn an achievement
Add and Edit
Another User’s List
Open search
Enter list name
Open it and add it
to personal lists
Add a book to the list
Changes Based on
Identified Issues:
Single book in the list: Got rid of the details
to make the interface lighter.

List element were too similar
with the book element making it
harder to navigate.

Pop-up that appears when user tries to edit other user’s list.
It was too overwhelming, so I’ve changed the wording.
(It’s still got a high mental load. But a little less.)

Starting a challenge.
Changed it from a pop-up
to a separate screen,
also made the hierarchy
more understandable
Categorizing “Want to read” list
Changed the wording, added a little hint on what the hell this screen is.
Added a button to cancel recent action.
This arrow is ugly on purpose.
I love this ugly arrow.


I wanted to make a simple yet good UI.
High contrast, readable type w/ good scale, distinct from competitors.
An app that is just nice to see and use.
Here’s the process from paper sketches to the final design.
II. Delivery phase
Iterations
Finished List
Book Page
Challenges Page
Stats Page
Search Page
Searching for the colors
This screen was GIANT ->
in the prototype.
I’ve cut it, but you can see
full content on the final screen.
<- In the process I came up with the number of books finished every month.
I think it’s a nice touch.




















Dark theme attempt ❌
This one reminds of something I don’t want for it to remind.
Main color: Green ❌
This makes me think of plants / healthy food. Not reading.
Main color: Orange ❌
Doesn’t fit
the book theme.
Main color: Red ❌
Seems too aggressive,
doesn’t fit either.
Main color: Blue ✅
Nice one. No excess associations.
I’ll stick with it.

This part speaks for itself.
I’m really proud
of how this app
turned out.
Main Page
Track Reading
Challenges
Search
Notifications
Profile
Community
Settings

Library
Finished List
Final App Design








Writing a Review



Other’s List


Achievements

Book Page

Challenge start

Notifications


Categorizing Books
in “Want to read” list
I haven’t seen this feature
in any competing app.
But I think I need it.
It’s a slightly changed Eisenhower Matrix for sorting the books you want to read.
Put books in 4 categories
to help you decide
what to read next.
Notifications will remind you to read important books or re-categorize books from time to time.
How good is this feature?
I don't know. It needs
an actual user base to see.
But I love the idea.
Original Eisenhower Matrix
Killer Feature
Urgent
Important
Not urgent
Important
Not urgent
Not important
Urgent
Not important
Not gonna lie, it’s a big mess. But I’ve learned a lot and won’t make it this bad again.
<— main
tracker
font
size
Font - Inter
Colors
UI Kit (kind of?..)
Design System
145
Header
Text
Small & bold (?)
Names
Body
Main color
Background
White
Black
Hearts
Abandoned Books

Want to read


This is my first project.
It was made as a practice and for the portfolio.
I like how it turned out,
but there is some mistakes
and weak places.
This section is like a confession.
I’ll tell about everything I’ve learned
and show all the mistakes I found.
Post Mortem
4 respondents is not enough.
There needs to be as much respondents as possible, until you start getting repeating answers.
I’ve started making high fidelity prototypes right away. It made the process harder and took more time for nothing.
In user testing I’ve helped my respondents too much. It should be less guided to gain more insights.
Make everything in components and styles.
It would be much easier to work later.
I. Lack of Research
IV. High Fidelity
II. Too much control
III. Components & Styles!!!
That’s it!
Thank you!
table of contents