Skip to content
Back to portfolio
Flix Over Six — Movie Discovery Platform
web appnext.jssupabasedata pipeline

Flix Over Six

A full-stack movie discovery platform that surfaces quality films (IMDb 6.0+) available on your streaming services.


The Problem

Streaming fatigue is real. With content spread across Netflix, Disney+, Prime Video, Apple TV+ and Paramount+, finding something genuinely worth watching has become a chore. Recommendation algorithms optimise for engagement, not quality — and they only show you what's on their platform.

Flix Over Six aggregates catalog data from every major streaming provider, cross-references it with IMDb ratings, and filters out anything below a 6.0. The result: a single, region-aware interface where you can browse only the films that are actually worth your time, across all your subscriptions.


Architecture

The core architectural insight is that movie catalog data doesn't change in real-time — new titles land daily at most. This means the entire discovery experience can be powered by static JSON files rather than a live API, giving CDN-speed performance with zero server load at browse time.

A five-stage ETL pipeline runs nightly via GitHub Actions: fetching TMDB data, downloading IMDb ratings, merging and reconciling sources, generating semantic vibe tags, and exporting per-region static JSON catalogs for US, GB, IE, CA, AU, and NZ.


Key Features

Region-Aware Streaming Discovery

Users select their region and streaming services. The app loads that region's catalog and filters in real-time — six regions supported, each with its own pre-computed dataset.

Smart Filtering

Multi-dimensional filtering by genre, vibe tags, rating range, language, and streaming provider. Active filters display as removable chips with a clear-all option.

Daily Selects Carousel

Three algorithmic picks: Top Pick, Sleeper Hit, and Anniversary — curated daily from the catalog.

Random Luck

A playful discovery mechanic with three spinning wheels — Era, Genre, and Provider — that surface matching films with three nudges per spin.

Vibe Tags

Semantic tags computed by the pipeline: sleeper-hit, quickie, golden-oldie, Big Name Energy, and decade-based tags that go beyond genre.

User Accounts

Clerk-powered authentication with persistent preferences, personal watchlists, and watched/not-interested tracking synced across devices.


Tech Stack

Layer Technology
Framework Next.js 16 (App Router)
Language TypeScript
Styling Tailwind CSS 4 + shadcn/ui
State Zustand
Database Supabase (PostgreSQL)
Auth Clerk
CI/CD GitHub Actions
Testing Vitest + Playwright
Analytics Google Analytics 4

Testing & Quality

  • 256+ unit tests covering components, stores, hooks, pipeline logic, and data validation
  • E2E tests via Playwright for critical user flows
  • Strict TypeScript with zero type errors
  • Zod validation at data boundaries
  • Pipeline safety checks preventing empty data exports

Interested in a similar project?

Get in Touch