Movie Vector Galaxy
A movie discovery site that turns a million films into a flyable 3D galaxy. Movies with similar plots and vibes physically cluster together, so you find your next watch by exploring instead of scrolling a list.
Most recommendation engines just show you "other people who liked X also liked Y." Movie Vector Galaxy takes a more visual, more honest approach to why two movies are actually similar: every movie is a glowing point in 3D space, and the distance between two points is a direct measure of how similar their stories are. Fly through it and you can watch entire genres cluster into their own regions, a Bollywood cluster here, an anime cluster there, a knot of dark psychological thrillers off on its own, without a single one of them being labeled by hand.
The trick behind it is something called an embedding. An AI language model reads each movie's plot, cast, director and genres and converts all of that into a single list of numbers, a coordinate. Movies about similar things end up with similar coordinates, the same way "king" and "queen" end up near each other in a language model's vocabulary. Those coordinates then get compressed down to three dimensions so they can be rendered as an actual point in space, and that's what turns into the galaxy you see in the video above.
The genuinely surprising part is that the technique making it fast enough to use is only a few years old. The BERT language model everyone talks about is very good at judging if two sentences are related, but painfully slow at doing it a million times. Comparing one movie against a million others the naive way would take roughly 60 hours. A follow-up idea called Sentence-BERT restructures the same model so each movie is converted to its coordinate once, up front, and comparing a million of them afterward takes about 5 seconds. That difference is the whole reason a project like this is possible on a laptop instead of a data center.
It's built to scale to the full one-million-movie TMDB catalog. Search by title or by vibe ("mind-bending dream movie" finds Inception without you typing the name), click into a movie for the full detail page, or drop straight into the galaxy and fly to whatever catches your eye.
How it works
Every movie's title, plot, cast, director and genres are combined into one passage of text and fed through intfloat/multilingual-e5-large, a multilingual sentence-embedding model, which outputs a single numeric vector capturing what the movie is actually about, in over 50 languages.
Those vectors are compressed from hundreds of dimensions down to 3D coordinates using UMAP, a technique built specifically for laying out high-dimensional data so that similar items land near each other and different clusters stay visually separated. That's what produces the "galaxy."
All the vectors are indexed with FAISS, a similarity-search engine built for exactly this job: given one movie or a typed-in description, it instantly pulls back the handful of closest matches out of a million candidates.
The frontend (Next.js and React Three Fiber) renders the galaxy and streams in more detail as you zoom in, so the browser only ever draws the points actually near you. The FastAPI backend handles search, embeds your query on the fly, and serves movie details, keeping the heavy vector math off the browser entirely.