the shared shelf
Library
My Shelf
What you're reading, want to read, and have finished — plus your reading year.
who has what
Lending
Track physical copies — record who you've lent a book to, borrow what's available, and keep swaps straight. No due dates; just who holds what.
Requests for your books
Members who asked to borrow a book you own. Approve to hand it over (marks it lent); decline to dismiss.
Out on loan
Your books someone's holding right now.
You're borrowing
Books you're holding from other members.
Your open requests
Borrow requests you've sent that are still waiting.
contribute
Add a book
One book, one card. It joins the shared shelf under its genre.
the long game
100 Essential Reads
The club's canonical list. Track how far the club has collectively read, and how far you have.
Add an essential read
Curators keep this list. An entry links to a book automatically when its title + author match something on the shelf.
the club, together
Club
This month's pick, voting on the next one, and books members recommended to you.
This month's pick
Recommended to you
Books other members thought you'd like.
Polls
Anyone can start a poll — the next read, a meetup date, a venue. Every member gets one vote and can change it anytime.
+ Start a poll
Past picks
the club, lately
Activity
New books, ratings, and shelf moves across the club.
the club, set up
Settings
Members, identity, and the technical bits.
Your profile
How you appear on ratings, reviews and the activity feed.
Members
Everyone in the club. Admins manage roles from the Admin tab.
Identity
Access is by club whitelist. You sign in with a one-time code sent to your email — no password to remember, and every rating and shelf move is tied to you.
Developer & agent access
Exposes a small window.passage API so scripts or an agent can drive the shelf over the same core. Off by default; agents act under your session.
AI helper off
On by default, using the club's shared model — nothing to set up. It powers a “fill from title” button on Add-a-book and a “suggest one for me” on your shelf. Prefer your own model? Switch the provider below and bring your own key (stored only in this browser, calls go straight to your provider). The app works fully without it.
Uses the club's shared model — no key needed. Everyone's covered.
Any OpenAI-compatible /v1 endpoint — OpenAI, OpenRouter, Groq, Together, a local Ollama/LM Studio, etc.
Your data
Export the whole library back to the Swap Book spreadsheet shape — anytime, no lock-in. The exported file opens with no worker, no bill, no model.
who gets in
Admin
Requests to join, the access whitelist, and member roles. Admin-only.
Requests to join
People who asked to join. Approve to add them to the whitelist (they get an email); decline to dismiss.
Whitelist
Only these emails can request a sign-in code. Add someone, and they'll join with the role you pick the first time they sign in.
Member roles
Promote curators (catalogue hygiene) and admins (whitelist + roles). Roles nest: admin ⊇ curator ⊇ member.