ReelRank

AI movie recommender, by Vikranth Reddy

What should you watch next?

Pick 1–3 movies you love. ReelRank builds your taste profile (the mean of their 216-feature vectors) and ranks all 64 movies by cosine similarity: genre one-hot (×2), keywords, era and runtime, no backend, no API calls.

5
Pick at least 1 movie (max 3), then hit the button.

How it works

1. Catalog
64 synthetic movies (1990–2026) with 12 genres, keyword tags, era bins (90s/2000s/2010s/2020s) and runtime bins (<100 / 100–140 / >140 min).
2. Features
Each movie becomes a 216-dim vector: genre one-hot (weight ×2), keyword one-hot, era one-hot, runtime one-hot, then L2-normalized.
3. Query
Your picks are averaged into one "taste profile" vector (also L2-normalized). Cosine similarity to every other movie gives the ranking: the exact same math train.py uses.
4. Evaluated
Mean genre-agreement precision@5 of 100.0% over all 64 movies (vs 27.8% for a random recommender, 3.6× lift).

Tech stack

Python · NumPy · vanilla JavaScript · static hosting (Vercel)

Files in this repo

train.py: catalog, features, evaluation, movies.json export (+ JS parity check) · movies.json: 64 movies + 216-dim feature matrix · index.html: this demo · vercel.json: security headers