I started this site in 2021, while I was learning to code. The first version was a static page written by hand. It turned into a React and Next.js app after that, and in 2026 I rebuilt it on the Next.js App Router with React 19 and TypeScript. That's the version you're looking at.
Highlights
Mostly static
Every page is static HTML. Only three pieces are interactive: the mobile menu, the typing line on the home page, and the contact form.
The contact form
It posts to a route handler that emails me through Resend. There's no database to look after.
A closer look
The home page. The line under my name types out a few words in turn.The skills page, which walks through the stack I use at work.