Personal website rewrite - embracing 2025's Web Technologies

How Next.js 15, React 19, and a desire for minimalism inspired me to rebuild my digital home from the ground up

It's that time again – the irresistible urge to rewrite my personal website has struck once more. With the recent releases of NextJS 15, React 19 (complete with its shiny new compiler), and Tailwind 4, how could I possibly resist? These tools have been my trusty companions for years, and watching them evolve has been like seeing old friends level up in an RPG.

The real catalyst for this rewrite, though, wasn't just the new tech. I found myself yearning for a more minimalistic approach, something that would let the content breathe without all the bells and whistles fighting for attention. Don't get me wrong – I loved my previous design, but sometimes less truly is more. Plus, it was the perfect excuse to tackle some technical debt and bid farewell to a few deprecated dependencies that had been giving me the side-eye for months.

A significant part of this refresh involved rethinking how I handle markdown and MDX in my blog posts and "crafts" (my collection of small demos and widgets that I tinker with). I've been particularly inspired by the work of Emil Kowalski and Rauno Freiberg – two engineers whose clean, thoughtful approaches to web development never cease to amaze me. Their influence definitely shows in this iteration, though I've put my own spin on things to keep it authentically me.

I've also been thinking a lot about the future of the web and what it means to be a developer in 2025. I'm not sure what the future holds, but I know that I want to be a part of it. Let's see how it turns out!

Continue Reading

Semantic CSS Variables

A personal reflection on the potential of semantic css variables in a multi-theme web application

React Server Components

React Server Components is one of the new features enabled by NextJS 13 and in this post I try to explain the difference between Server and Client components and other common misconseptions