Colophon
How this site was built
This portfolio is built with care and a few favourite tools:
Framework. Next.js 15 with the App Router and TypeScript in strict mode. Static generation where possible, server components by default.
Styling. Tailwind CSS v4 with shadcn/ui components, tuned to a dark palette. No light mode — the site is designed for darkness.
Typography. Playfair Display for headings, Inter for body text, Geist Mono for code. Fluid type scale using CSS clamp() for seamless scaling.
Animation. GSAP with ScrollTrigger for scroll-driven reveals, Framer Motion for page transitions. All animations respect prefers-reduced-motion.
Database. Supabase (PostgreSQL) for content management, visitor analytics, and contact form submissions. Custom cookie-free analytics — no third-party tracking scripts.
Deployment. Vercel for hosting with edge functions and geo-based analytics.
Design. Dark luxury aesthetic inspired by editorial design. Near-black backgrounds, warm parchment text, amber accents. Every interaction is considered.