Why I rebuilt the site in Next.js
title: Why I rebuilt the site in Next.js date: 2026-04-21 excerpt: Moving off an ASP.NET template I never customized. Here's why Next.js made sense.
Why I rebuilt the site in Next.js
The previous version of this site was a default ASP.NET Core MVC template from 2018. I never added any real content — just the starter banners and some placeholder pages. Every time I thought about updating it, I bounced off the friction: compile step, server project, templates I didn't know well.
Next.js solves that for me:
- One toolchain. Pages are React components. Blog posts are MDX files.
- Zero-config deploys. Push to a branch, get a preview URL.
- It's just files. New post = new
.mdxfile. No database, no CMS.
The stack fits how I actually work: write markdown, commit, move on.
Tradeoffs
Static-ish sites don't need any of the more advanced Next.js features — ISR, Server Actions, the works. I'm using maybe 10% of the framework. That's fine. The 10% I'm using is the part I wanted.
If I ever need more — auth, dashboards, a real CMS — the runway is already there.
A blog post is just a file
Adding a new post is two steps. Create the MDX file:
# My new post
Some **markdown** content. Code blocks highlight automatically.Then register it in src/lib/posts.ts:
export const posts: Post[] = [
{
slug: "my-new-post",
title: "My new post",
date: "2026-04-23",
excerpt: "One-line description.",
},
// ...
];That's it. It shows up at /blog/my-new-post, the blog index, the sitemap,
the RSS feed, and gets its own auto-generated OG image for social sharing.