Skip to content

Feat: improve recommendations #504

Description

@linear

Title: ML-powered recommendation system (exclude watched content)

Description

  • Problem: Recommendations sometimes show titles the user has already watched (watchlist / watching / watched / dropped). Doing “filter TMDB list by watched IDs” on backend leads to fewer and fewer results as users watch more (e.g. 10 items → 8 watched → 2 left).
  • Direction: Implement an ML-based recommendation engine that generates personalized suggestions instead of filtering a single TMDB list. The model uses user behavior (watched, ratings, preferences) and naturally avoids already-watched content while scaling with data.
  • Scope: Phased rollout: (1) data + simple collaborative filtering, (2) hybrid ML (collaborative + content-based), (3) optional LLM layer. Keep TMDB as fallback for new users and cold start. Full design in .cursor/plans/ (ML recommendation plan).
  • Out of scope for this ticket: Short-term “filter + pagination” workaround on the TMDB proxy; that approach was explicitly deprioritized in favor of ML.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions