Jon OlsonCarmel, IN · ET
Demo · desktop

ShelfSense

A digital library from a photo of your bookshelf.

ShelfSense turns a photo of a bookshelf into a searchable catalog. Claude reads the spines, Google Books fills in the details, and the books land on shelves in a 3D library you can browse.

I started it in December 2025 and couldn’t get the quality there, so it sat on the shelf for most of the year. In October 2026 I came back with one prompt and a stopping condition, and Claude spent about 55 minutes measuring, fixing and re-measuring until the results held up across multiple photos.

See the demo

What’s interesting about it


Measured, not eyeballed

On my labeled test photos, it finds 99.4% of the books in close-up shots, with 98.1% precision. The first scorer reported 0% because it paired shelves by number, so fixing the scorer came before fixing the pipeline.

Never confidently wrong

A wrong book is worse than a missing one, so uncertain matches go to a review queue. Across three full evaluation runs, it auto-accepted zero wrong books.

A library you can walk into

The Study has a fireplace, a reading chair and a side table of books in progress. The Sun Room looks out over the water, with light that follows the time of day.

Questions


What is ShelfSense?

ShelfSense is a web app that catalogs physical books from a photo of a bookshelf. Claude reads the spines, Google Books adds the details, and the result is a searchable catalog shown as a 3D library.

How accurate is ShelfSense?

On close-up test photos it found 99.4% of the books with 98.1% precision, and it never auto-accepted a wrong match. The sample is small: four photos of one set of bookcases.

Can I use ShelfSense on my own books?

Not yet. The demo shows Jon’s own library. He may open it up if there’s interest.

Who built ShelfSense?

Jon Olson, a product leader in Carmel, Indiana, built it with Claude Code.

Writing about it


More projects


Live on the App Store

RepRecap

Instant replay for volleyball practice.

Swift, SwiftUI, AVFoundation, Claude Code

Free in your browser

RoadTripKit

Road trip games for the whole car.

React, Socket.IO, Postgres, Railway, Claude

Launching concept

FansGiving League

A football rivalry, turned into a race to give.

Next.js, TypeScript, Postgres, Prisma, Railway, Claude Code

Live on this site

Jon’s AI agent

Ask it about my work, out loud or by typing.

ElevenLabs Agents, Claude, Astro, Claude Code