Arman
All work

02 / Flagship case study

Full-stack engineering · Frontend / product UI · Backend / APIs

FrameSignal

Decision-first movie guidance with explicit spoiler boundaries and protected editorial workflows.

FrameSignal decision interface showing a spoiler-aware Signal Card beside its decision anatomy.
Signal Card and decision anatomy
Type
Full-stack engineering · Frontend / product UI · Backend / APIs
Status
Live project
Core stack
Next.js / React / TypeScript / Supabase / PostgreSQL
Repository
Public repository

Project overview

FrameSignal is a spoiler-safe movie guidance product organized around a decision layer before deeper editorial reading. Its public experience is backed by protected content-management workflows and database authorization.

01

Decision architecture before deep reading

The content model surfaces practical signals first, then lets a visitor choose whether to continue into spoiler-sensitive explanation.

Signal Card
A compact decision surface for the final verdict, score, mood, runtime feel, family-safety context, and spoiler risk.
Explicit spoiler boundaries
Reviews, ending explanations, and theories are separated so deeper analysis is an intentional choice rather than an accidental reveal.
Discovery tools
Mood-led discovery, movie profiles, a Watch Signal Generator, and legal viewing guidance extend the decision system beyond article browsing.

02

Public product and protected editorial system

FrameSignal separates public reading surfaces from authenticated administration while using Supabase and PostgreSQL for content, identity, and row-level authorization.

Public Next.js routes

Server-rendered reviews, movie pages, guides, theories, and discovery tools

Content access layer

Published-content reads with documented local fallback content

Supabase / PostgreSQL

Content schema, authentication, migrations, and Row Level Security

Protected admin routes

Authenticated editorial create, edit, review, and settings workflows

Vercel deployment

Verified public application deployment

System relationships

  1. Public routes read published content through server-side helpers and fall back to local content where documented.
  2. Protected administration is separated from the public layout and checked through authentication, route protection, and database policies.
  3. The deployed Next.js application connects the public and administrative surfaces to the Supabase-backed content system.

03

Content boundaries are also system boundaries

  1. Public content is primarily server-rendered, while protected administration is isolated in a separate route group and layout.

  2. Row Level Security participates in the authorization model rather than relying only on interface-level access checks.

  3. Public content helpers filter to published material, and robots and sitemap behavior keep administration routes outside the public discovery surface.

  4. Media records retain structured metadata and credit context so interface presentation can preserve source information.

04

The public promise

The homepage establishes the same order used by the product model: verdict first, visible spoiler boundaries, and deeper reading by choice.

FrameSignal homepage introducing verdict-first movie guidance, spoiler boundaries, and legal viewing guidance.
Decision-first public experience

05

Technical stack in the repository

  • Next.js
  • React
  • TypeScript
  • Supabase
  • PostgreSQL
  • Supabase Auth
  • Row Level Security
  • Supabase Storage
  • Vercel