
A fantasy podcast and fan film site I built twice: first in React 18 / Vite as an SPA, then migrated to Next.js 15 App Router when the content-driven architecture started creating real friction for SEO and maintenance.

A portfolio site built with Next.js, Sanity v3, Tailwind CSS, Framer Motion, and Vercel, for an animation and motion graphics artist targeting studio and agency job applications.

A four-week redesign of a youth-development nonprofit's site on Next.js 15 (App Router), React 19, and TypeScript, with Sanity driving age-based pathway content and an interactive age-finder routing visitors to the right stage.