Bookcrumb
PERSONAL READING DISCOVERY AND ROUTE SYSTEM
A recommendation product that builds personal reading routes from mood, interests, pace and reading history.
Before the technical detail, read the problem, decision and evidence as one narrative chain.
- STATUS
- Live
- TYPE
- SaaS · Reading discovery
- ROLE
- Product and systems architecture · Recommendation context
- PLATFORMS
- Web · PWA
What was the problem, what changed, what is different now?
Before the technology details, this shows the transformation: the original bottleneck, the intervention, and the outcome that can be verified today.
PROBLEM
Mood, theme, pace, profile and history signals had to become one recommendation context that remains consistent across routes, notes and membership state.
INTERVENTION
I modeled persistent reader profile and current intent as separate inputs, then built a flow that produces a Reading Route through a Recommendation Context.
OUTCOME / CURRENT STATE
Bookcrumb is live with discovery, routes, notes, memory and paid membership combined into one reading experience.
- EVD-02 / Transformation
- Flat book list → contextual reading route
- EVD-03 / Product outcome
- Discovery · routes · notes · memory
- EVD-04 / Monetization layer
- Paddle entitlement flow
ROI, revenue lift or percentages are shown only when a verifiable source exists. Otherwise the proof is the working product, distribution, system outcome and sourceable scope — never invented metrics.
Reading route start rate
Share of users who create a valid Recommendation Context and then save / start the generated Reading Route, moving into the actual reading flow.
Recommendation Context completed → Reading Route generated → route saved / started.
Reading Route lifecycle events; the analytics vendor and real event names must be verified before publishing a baseline.
No verified baseline is published for this case yet; no value is invented and no numerical claim is made before the source is verified.
Context
A flat discovery list does not explain why a book fits the reader now. Bookcrumb treats recommendation as an ordered route with memory.
Problem
Mood, theme, pace, profile and history signals had to become one recommendation context that remains consistent across routes, notes and membership state.
My role
- Product and systems architecture
- Recommendation context
- Monetization
Solution
I modeled persistent reader profile and current intent as separate inputs, then built a flow that produces a Reading Route through a Recommendation Context.
What was built
- Mood / theme / pace context model
- Reading routes and route stops
- Reading memory and notes layer
- AI-ready provider architecture
- Paddle monetization and entitlement flow
- PWA and Cloudflare-compatible worker build
System architecture
Technical stack
FRONTEND
React 19 · TypeScript · TanStack Start · TanStack Router · TanStack Query · Tailwind CSS 4
BACKEND / DATA
Supabase
AI / BILLING
AI SDK · OpenAI-compatible provider layer · Paddle
RUNTIME
Vite · Nitro · Cloudflare-compatible worker build · PWA
Important engineering decisions
- Model recommendation as route context rather than a single-book score
- Keep the AI provider layer separate from the product domain
- Feed reading history back into future recommendation context
Code / architecture excerpts
01type ReadingRoute = {02 mood: Mood;03 pace: ReadingPace;04 themes: Theme[];05 stops: BookStop[];06 memoryContext: ReaderMemory;07};Result / current state
Bookcrumb is live with discovery, routes, notes, memory and paid membership combined into one reading experience.
Engineering takeaways
- In recommendation products, context design matters more than the model call.
- User memory should be an input to the next decision, not just an archive.
OUT-LIVE / VISIT PRODUCT
Bookcrumb
EVIDENCE / AUTHORITY
What does this case prove?
The roles and decisions documented here are not portfolio decoration; they are concrete evidence for the work described on the services and capabilities pages.
NEXT PROJECT
PRJ-05Lumoria