Description
Create a public watchlist of Expanded-format cards ranked by relevance, curated by archetype editors. The goal is to help players interested in the format spot trade opportunities by surfacing which cards matter in the current meta.
Rating system
Archetype editors rate cards on a 0–5 scale:
- 5 — Staple (seen in most competitive decks)
- 3 — Often used (common in several archetypes)
- 1 — Occasionally used (niche or tech choice)
- 0 — Disregarded (not competitively relevant)
Cards that have never been rated by any editor are excluded from the watchlist entirely.
User experience
- Public watchlist page: cards sorted from hottest (highest average rating) to marginal, with card images, names, and aggregated score
- Set browser for editors: browse cards by set (
TcgdexSet), click a card to set its rating (0–5). Quick workflow for bulk rating.
- Filters: by card type (Pokemon/Trainer/Energy), by set, by rating range
Current state
- No card catalog or browsing UI exists yet — cards are only visible within deck lists
CardIdentity groups cards across printings, CardPrinting represents specific set printings
TcgdexSet / TcgdexSerie model the set hierarchy with multilingual names
TcgdexCard mirrors TCGdex data locally (images, abilities, attacks, pricing)
CardPrinting.priceInCents tracks Cardmarket average price
CardPrinting.isExpandedLegal flags format legality
Implementation considerations
- New entity:
CardRating — links User + CardIdentity + score (0–5) + timestamp
- Aggregation: average score across all editor ratings, with count
- Set browsing UI: list sets (series → sets), show card grid per set, overlay current user's rating
- Public watchlist: paginated, filterable, sorted by aggregated score
- Permissions: only
ROLE_ARCHETYPE_EDITOR can rate; watchlist is public
Open questions
Technical notes
This is a large feature requiring:
- New entity + migration
- Card browsing UI (new, greenfield — no existing card catalog)
- Rating interaction (likely React component with click-to-rate)
- Aggregation service
- Public watchlist page with filtering/sorting
- Significant design discussion before implementation
Feature reference
New feature — would need a new feature ID in docs/features.md
Description
Create a public watchlist of Expanded-format cards ranked by relevance, curated by archetype editors. The goal is to help players interested in the format spot trade opportunities by surfacing which cards matter in the current meta.
Rating system
Archetype editors rate cards on a 0–5 scale:
Cards that have never been rated by any editor are excluded from the watchlist entirely.
User experience
TcgdexSet), click a card to set its rating (0–5). Quick workflow for bulk rating.Current state
CardIdentitygroups cards across printings,CardPrintingrepresents specific set printingsTcgdexSet/TcgdexSeriemodel the set hierarchy with multilingual namesTcgdexCardmirrors TCGdex data locally (images, abilities, attacks, pricing)CardPrinting.priceInCentstracks Cardmarket average priceCardPrinting.isExpandedLegalflags format legalityImplementation considerations
CardRating— linksUser+CardIdentity+ score (0–5) + timestampROLE_ARCHETYPE_EDITORcan rate; watchlist is publicOpen questions
CardIdentity(functional card) or perCardPrinting(specific set)?Technical notes
This is a large feature requiring:
Feature reference
New feature — would need a new feature ID in docs/features.md