Building My New Personal Website
April 7, 20262 min read
Next.jsReactTypeScriptTailwind CSS
Why Rebuild?
My old personal website was built with Angular 13 and Angular Material. It served me well for years, but the web has evolved — and so have I. I wanted something that:
- Felt modern and polished without being gimmicky
- Was fast and optimized for performance
- Could host a blog where I write about things I'm learning
- Had an AI chatbot that visitors could use to learn about my background
- Was easy to maintain and deploy from my homelab
The Stack
After evaluating several options, I landed on:
- Next.js 16 with App Router for SSR, API routes, and the latest React 19 features
- Tailwind CSS v4 with shadcn/ui for a clean, accessible design system
- Framer Motion for subtle scroll-triggered animations
- MDX for blog posts — Markdown with React components, version-controlled in the repo
- Claude Sonnet 4 via the Vercel AI SDK for the chatbot
- Docker + Caddy on my homelab for self-hosted deployment
Design Philosophy
I wanted a dark-first, minimal aesthetic inspired by sites like Vercel and Linear. No "hacker terminal" vibes — just clean typography, thoughtful spacing, and subtle interactions that make the site feel alive without being distracting.
What's Next
- Setting up the AI chatbot with context about my resume and projects
- Adding self-hosted analytics with Umami
- Writing more blog posts about ML, distributed systems, and architecture patterns
Stay tuned.