Reshaped from docs/user-stories.md. Legend: ✅ Live · 🟡 Partial · ⚪ Planned.
Personas: Giver
2.1 Browse a discovery feed ✅ — As a Giver, I want an infinite, on-taste feed, so that I discover ideas by scrolling.
/feed: cursor-paginated infinite scroll ranked server-side (scorePost), images-only by default, local fallback when API is unreachable.
2.2 Filter the feed ✅ — As a Giver, I want to filter by recipient/occasion/category/vibe, so that I can zero in.
Facet filters supported by /feed and /recommendations.
2.3 Like, save & comment 🟡 — As a Giver, I want to react to finds, so that I can shortlist and signal taste.
UI updates immediately; POST /interactions exists but reactions are local-only (no cross-device sync yet).
2.4 Swipe to discover ✅ — As a Giver, I want a fast swipe deck, so that I can triage many options quickly.
/feed/swipe yes/no deck; choices feed taste signals.
2.5 Curated drops & ideas ✅ — As a Giver, I want curated collections and idea lists, so that I get inspiration beyond the raw feed.
/feed/drops and /feed/ideas.
Reshaped from
docs/user-stories.md. Legend: ✅ Live · 🟡 Partial · ⚪ Planned.Personas: Giver
/feed: cursor-paginated infinite scroll ranked server-side (scorePost), images-only by default, local fallback when API is unreachable./feedand/recommendations.POST /interactionsexists but reactions are local-only (no cross-device sync yet)./feed/swipeyes/no deck; choices feed taste signals./feed/dropsand/feed/ideas.