Home / Blog Menu ↓

Bookshelf in 2024

In writing my /uses page, I realized it’s been a little while since I last showed what my Bookshelf app looks like. Time for an update. (What is Bookshelf, you ask? A web app I wrote to track my reading.)

Here’s the current state, and note that I took this screenshot last night, so the monthly stats are for February:


I forgot to mention this back in 2020, but the app started in late 2011 as Bookkeeper. A few years later I rewrote it in Python (Django) and renamed it (because o-o k-k e-e). I’m pretty happy with its current incarnation and use it every day except Sundays. My brain likes those stats. It really does. I’m sure I’d still read a lot even without them, but boy, the stats certainly motivate me to spend more time reading. (Well, some days more than others.)


  • Top left is monthly stats (genre breakdown, pages read, books read this month to date, average pages per day, and how far into the month we are).
  • Top right is yearly stats.
  • The bar chart tracks how many pages I’ve read over the past couple weeks, with each color representing a different genre (red is nonfiction, green is fantasy, blue is science fiction, brown is general fiction, etc.). The page count gets brighter the closer I get to my goal of 100 pages per day. And yes, the dashed gray dividers are one pixel off. I need to fix that.
  • For each book, I have some metadata under the title and author: percentage completed, number of pages I’ve read so far (included because in ebook land most books don’t start on page 1), number of days I’ve been reading the book, how many days are left at my current rate, how many pages per day I’m averaging so far, how many pages I’ve read today (this is used as my current rate if it’s greater than my average pages per day, and this is red if it’s lower than my average pages per day, as motivation to maintain my rate for each book), and how many pages are left.
  • The part at the right of each book row is the current page and how long it’s been since I last read that book (which also affects the background color). I tap the page number to enter whatever page I’m on. If it’s a book in Libby, by the way, I tag the book that way when adding it and it’ll adjust how it counts the pages (it takes around three Libby screens to get to a page the way I’m counting it).
  • The very faint ellipsis button in the lower right opens a menu with links to add books, search, see previous reads, and see stats for previous years.

tl;dr I’m nerdier than you thought.