801 books Log in

How to use BookBinder

BookBinder helps you catalogue every book in your home using your phone camera and Claude AI. Here's how.

1

Install Docker Desktop

Download and install Docker Desktop from docker.com. It's free.

  • Mac: download the .dmg, drag to Applications, launch it
  • Windows: download the installer, run it, restart if asked
  • Linux: follow the instructions at docs.docker.com/engine/install

Wait until Docker Desktop shows "Docker is running" before continuing.

2

Download and start BookBinder

Unzip BookBinder into a folder. Open a Terminal (Mac/Linux) or Command Prompt (Windows), navigate to the folder, and run:

docker compose up -d

Docker will set everything up automatically — database included. When it's done, open http://localhost:8585 in your browser.

⏱ The first run takes a minute or two to download. Subsequent starts are instant.
3

Set your editor password

Open app/config.php in a text editor and find this line:

define('BB_EDIT_PASS_HASH', password_hash('bookbinder', PASSWORD_DEFAULT));

Replace bookbinder with your chosen password. Anyone can browse your catalogue, but only someone with this password can edit it.

4

Photograph, zip, and upload to Claude

See the Cataloguing your books section below — it's the same for everyone.

5

Import the SQL Claude generates

Copy the SQL from Claude and paste it in using either method:

phpMyAdmin (easiest)

If you added phpMyAdmin to your docker-compose.yml (see README), go to http://localhost:8586, select the bookbinder database, click the SQL tab, paste and click Go.

Command line

docker exec -i bookbinder_db mysql -u bookbinder -pbookbinder123 bookbinder << 'EOF'
-- paste your SQL here
EOF
✅ The SQL uses INSERT IGNORE — safe to re-run as many times as you like.

Cataloguing your books

These steps are the same whether you're using Docker or a manual install.

A

Take photos of your bookcase shelves

For best results:

  • One shelf per photo — don't try to capture the whole bookcase in one shot
  • Straight on — stand directly in front of the shelf, not at an angle
  • Good light — natural daylight or overhead light; avoid flash glare on spines
  • Fill the frame — get close enough that spine text is readable
  • One wide-angle overview shot is useful too, for the bookcase photo in the app
📱 Tip: Take 3–5 close-up shelf shots per bookcase, then one overview. iPhone or Android both work fine.
B

Zip the photos for each bookcase

Group the photos for each bookcase into a folder and zip it. Name it clearly:

  • bcase1_lounge_main.zip
  • bcase2_hall_by_stairs.zip
  • bcase3_study.zip

On a Mac: select the photos → right-click → Compress.
On Windows: select photos → right-click → Send to → Compressed folder.

💡 You can do multiple bookcases at once — just zip them separately and upload together.
C

Open a new chat with Claude

Go to claude.ai and start a new chat. Paste this prompt to get Claude set up:

I'm cataloguing my home library using BookBinder. I'll upload zipped photos of each bookcase and I need you to:

1. Read all the book spines in the photos
2. Generate SQL INSERT statements in this format:

INSERT IGNORE INTO books (title, author, category, sub_category, bookcase, shelf, location_name, notes) VALUES
('Title Here', 'Author Name', 'Category', 'Sub-category or NULL', BOOKCASE_NUMBER, SHELF_NUMBER, 'Room Name', 'any notes');

Rules:
- category should be one of: Fiction, Non-Fiction, Sailing, Medical, TEFL, Reference, Gardening, Cookery, Art, Music, Humour, Games, Sport, Motoring, Health, Poetry, Nature, Travel, DIY, Magazines
- sub_category for Medical: Anatomy, Osteopathy, Homeopathy, Nutrition, Physiotherapy, Orthopaedics, Clinical, Alternative Health
- shelf numbers count from top (1=top shelf)
- bookcase number is the number I give you with each upload
- Use NULL for unknown authors
- Flag unclear titles with 'Title unclear - check' in notes

After each bookcase, output the complete SQL block ready to paste into phpMyAdmin.

Ready — I'll upload bookcase 1 now.
D

Upload your zip files to Claude

Drag your zip files into the Claude chat (or use the attachment button). You can upload several bookcases at once. Tell Claude which bookcase number each one is and what room it's in, for example:

These are bookcases 1, 2 and 3.
Bookcase 1 = Lounge
Bookcase 2 = Hall by stairs
Bookcase 3 = Study

Claude will read the spines and generate the SQL for each bookcase.

💡 If a title is hard to read, Claude will flag it in the notes column so you can check it against the physical book later.
E

Add bookcase photos (optional but lovely)

Log in and go to the Bookcases page. Upload an overview photo for each bookcase — it appears on the bookcase card so you can see at a glance where a book lives.

F

Browse, search and tidy up

On the Browse page you can:

  • Search by title or author
  • Filter by bookcase or category using the sidebar
  • Edit any book's category or sub-category with the ✏️ button (log in first)
  • Fix any titles Claude couldn't read clearly
💡 Books flagged as 'Title unclear' are worth walking round with your phone to double-check. A quick follow-up message to Claude with a clearer photo of just that shelf usually does it.

Tips for a good catalogue session