Feature
Semantic Color Tokens
Background, foreground, primary, muted, card, border, and focus-ring variants are centralized in Tailwind CSS v4 theme definitions.
Project 04 / 2025
Year
2025
Role
Fullstack Developer
Technologies
Next.js, Supabase, TypeScript, Tailwind CSS, Design System

About this project
MovieOn is a modern movie web interface focused on theming, accessibility, and clean frontend architecture. It uses Next.js App Router, TypeScript, Tailwind CSS v4, optimized fonts, and a Supabase-ready dependency stack.
Overview
MovieOn explores a cinematic browsing experience with a strong foundation for theme switching, reusable tokens, optimized typography, and future content integration. The README emphasizes design-system quality as much as page implementation.
My Role
Built the frontend architecture, theme provider, Tailwind token system, font setup, and reusable UI direction. The project was structured to make visual iteration fast without scattering colors or typography across components.
Key Features
05 Items
Feature
Background, foreground, primary, muted, card, border, and focus-ring variants are centralized in Tailwind CSS v4 theme definitions.
Feature
Next.js font optimization wires Oswald, Source Sans 3, and Montserrat Alternates into CSS variables.
Feature
Next.js App Router structure keeps root layout, page composition, theme providers, and global styles predictable.
Feature
Radix UI primitives support dialogs, dropdowns, avatars, labels, popovers, and slots for accessible interaction patterns.
Feature
Supabase client dependency is included for database-backed movie content, auth, or serverless data features.
Tech Stack
Framework
Styling
UI and Data
The Challenge
Movie interfaces can quickly become visually inconsistent when theme colors, display fonts, and interactive states are handled component by component. The project needed a clean base for cinematic UI without sacrificing accessibility or developer experience.
The Solution
Built the UI around semantic theme tokens, class-based dark mode, optimized font variables, and reusable primitives. This keeps the visual language centralized while allowing pages and components to remain simple.
Lessons Learned
01
Theme systems should start with semantic intent, not raw color names.
02
Font roles are easier to maintain when headings, body, and accents map to explicit CSS variables.
03
Small UI projects still benefit from production-grade structure when they are meant to grow.
Screenshots
Swipe or use the arrows.
Links
Related Work
03 Cases

Contribution to Kiro, an agentic IDE and CLI for spec-driven development, hooks, powers, MCP integrations, and codebase-aware AI workflows.

SDG-focused landing page, learning hub, and Notion-powered blog platform for the Youth for Change initiative at UD-UFLS.

Full-stack PC hardware commerce platform with admin operations, JWT auth, QR checkout, analytics, AI chat, and price forecasting.