Book Map
A reading roadmap that shows what order to read in for a topic - the goal is showing the path, not a list of recommendations.
- React
- TypeScript
- Hono
- Reading
Landing - the one-liner ("we don't recommend books, we show you the order") plus the three value props: order, connection, your position
Reading journey - per-topic progress (1 of 7) and the status of each book on one screen
Topic map - book cards laid out along the path, with a "you are here" marker for position
Book detail - status, rating, purchase links, plus standardized "why read this," "what you'll take away," and "good prerequisites"
Book review with AI feedback - the AI returns "what you caught," "what to deepen," and a one-line verdict
End of review - two rails ("on the map / off the map") lead to the next book
My library - read, reading, and to-read gathered in three buckets
AI recommendations - using the review you wrote, the AI surfaces both "next on the map" and "off the map" picks
- Problem
Recommendation lists are everywhere; a map of "what to read in what order" is not. Beginners keep spending time picking the next book, and mentors don't have a single line they can hand someone.
- Context
Grew out of fourteen years of "which book should this beginner read first?" - the value of a book sits less in a single recommendation and more in laying down the path through a topic.
- Users
Self-learners taking on a new topic, and mentors who want to point a junior somewhere with one short answer.
- Hypothesis
Replace the catalog of book cards with a single map that shows order, connections, and your own position - and "what should I read next" turns from a search into a glance.
- What I did
- Reading-map data model - sequence and stage relationships between books
- Map view - book cards laid out along the path, with a "you are here" marker
- Book detail - standardized into "why read this," "what you'll take away," and "good prerequisites"
- Book review with AI feedback - the AI returns "what you caught," "what to deepen," and a one-line verdict, ending with "next on the map" and "off the map" picks
- My library - read, reading, and to-read books gathered in one place; ratings and notes captured right on the card
- The frontend works statically; a Hono + Neon Postgres + Drizzle + JWT backend layers on for accounts, sync, and curator edits
- Product decisions
- Deliberately no "top-10 books" list - protecting the identity of showing the path, not the picks
- After-review recommendations split into two rails ("on the map / off the map") - the reader decides whether to stay on the route or branch out
- Backend kept as an optional layer - no signup friction at first entry; sync only when the reader wants it
- Curators can edit content without a code deploy - if "one map" is going to stay trustworthy over time, the operator needs reachability
- Metrics
Alpha stage. Three topics registered (startup, writing, programming basics); real-user numbers not yet measured.
- Result / Learning
The frontend already works end to end, so the next round is defined as "polish one topic and watch for signal." Once curators get added, "what's the rule for what fits onto one map" becomes the biggest design question.
- Outlook
Alpha stage. Polishing one topic (e.g. QA fundamentals) first and watching for demand signals.
- QA lens on this call
Curation isn't a write-once job - books shift, readers add, the dataset is a regression problem. Whether the curator can edit content without a code deploy decides how long "one map" stays trustworthy; the backend separation was made through that lens.
- Tech stack
- React 18
- TypeScript
- Vite
- React Router v6
- Tailwind
- Hono
- Drizzle ORM
- Neon Postgres
- JWT
- Cloudflare Pages
- Render
- Links