Methodology

How Classics Shelf recommends

Classics Shelf uses a transparent recommendation engine. It turns your Goodreads export into a readable taste profile, then compares that profile with a curated catalogue of classic works.

What counts as a classic

Classics Shelf does not treat age alone as the test. A classic should have lasting influence, strong reread value, durable interpretive depth, and a good reason to remain in active reading life rather than historical storage.

That is why the catalogue can include ancient epics, early modern works, nineteenth-century novels, and selected modern books without using a rigid date cutoff.

What it reads

The upload flow parses visible Goodreads CSV fields such as title, author, rating, exclusive shelf, bookshelves, dates, page count, publisher, binding, and review text when present.

How read books are treated

Books that already appear as read in your Goodreads export are excluded from the next-read recommendation list. The system uses title and author matching plus seeded aliases so common edition and punctuation differences do not block that exclusion.

How want-to-read is treated

Books on your Goodreads want-to-read shelf can still appear, but they are labelled clearly. That lets the app confirm an existing instinct while still ranking books you have not read yet.

How scoring works

The scoring model weighs theme overlap, mood overlap, era fit, length comfort, difficulty tolerance, similarity to books you rated highly, and a small bonus for titles already on your want-to-read shelf.

Why the engine is rule-based

The current product prefers a transparent scoring model over hidden prediction layers. That keeps recommendation explanations tied to visible catalogue tags and reading-history signals rather than unverifiable model behavior.

What results explain

Recommendation cards show fit score, confidence, reading order, specific taste matches, likely friction points, and the edition style most likely to suit the read.

Privacy and limits

Goodreads CSV parsing happens locally in the browser. The current anonymous flow does not permanently store the raw CSV by default. Future saved profiles should persist derived profile summaries only after explicit user choice.

The current app does not use the Goodreads API, does not scrape Goodreads or Amazon, does not aggregate live reviews, and does not pull marketplace ratings into recommendation logic.

Catalogue summaries are editorial seed data. When the word consensus appears, it refers to an internal editorial summary of common reader-facing strengths and tradeoffs, not live review scraping.

Cover images for seeded catalogue books use stored identifiers only. Uploaded Goodreads data is not used to search Open Library or any other external source.

Future editorial AI use

A later phase may use AI to draft supporting editorial context such as author notes, historical background, or cleaner summary copy, but public pages should prefer reviewed content.

Any later AI-assisted content should be stored with internal source and review metadata so it can be checked, corrected, and replaced without changing the public structure of the site.