[Product] Explain recommendations and capture high-value repository actions
- Dominant language
- TypeScript
- Stars
- 4
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
## Problem
The feed card does not clearly explain why a repository was recommended and does not expose several high-value actions needed by both users and the ranking system. The README popup presents repository text, but opening it is not logged as a distinct signal.
A recommendation product should distinguish semantic relevance, social proof, trending discovery, and exploration rather than presenting every item as an unexplained model output.
## Proposed change
- Show a concise `Why you're seeing this` reason based on safe, user-facing features.
- Add an explicit Open GitHub action and record it separately from README/details opens.
- Render README markdown safely rather than as undifferentiated plain text.
- Show owner identity/avatar, activity/freshness, license, and repository health where available.
- Add share/follow/not-interested actions and optional not-interested reasons.
- Include the selected board name/category with save events as a consented preference signal.
- Never expose raw internal scores or sensitive inferred attributes.
## Acceptance criteria
- Every card can display a typed recommendation source and at least one human-readable reason.
- README open, GitHub open, save-to-board, share, follow, and explicit dismissal are distinct events.
- Reasons are deterministic from response fields and covered by snapshot/unit tests.
- Accessibility labels and external-link confirmation behavior are implemented.
- Product analytics can compare action rates by recommendation source without relying on raw click-through rate alone.
Contributor guide
Research direction
Start by locating the feed card, README popup, recommendation response fields, and analytics event handlers described in the issue. Read the existing snapshot and unit-test setup before mapping the acceptance criteria to the current UI and events. Done means the distinct actions, typed reasons, safe README rendering, accessibility behavior, and source-level analytics comparisons are covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- accessibility, analytics, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100