About this catalogue

My Goodreads Reading List is a small information system built on a single Goodreads Export Library download — a snapshot of my shelves. Everything you see is searched, filtered, and tallied in your browser; there is no server and nothing is tracked.

How it works

The raw export (goodreads_library_export.csv) is normalised by a short Python script into a compact books.json, which the page loads to power the live search, the by-the-numbers stats, and the reading-by-year chart. Re-running just data after a fresh export rebuilds everything.

Book covers are fetched on demand from the Open Library Covers API by ISBN. Where there is no ISBN or no cover on file, the book gets a generated typographic cover instead — so the grid is always complete.

A note on the data

The Goodreads export is honest but limited, and this site doesn’t pretend otherwise:

  • No genres. The export carries no subject or genre field — its Bookshelves column only holds status shelves (currently-reading, to-read, stopped). So filtering is by the facets the data actually supports: author, year read, my rating, reading status, and format.
  • “Currently reading” runs high. Goodreads keeps a book on the currently-reading shelf until it’s explicitly marked finished, so that count reflects shelf state, not 296 books open at once.
  • Ratings & dates are sparse for older entries. Many books predate the habit of logging a finish date or a star rating; those show as unrated or carry no read date.

Colophon

Built as a lean Jekyll site on GitHub Pages — Fraunces for display, Hanken Grotesk for text, JetBrains Mono for the catalogue figures. Source on GitHub.

Written by Jörn Dinkla.