Back to all blogs

This website is made with Markdown, why?

technical field note · by · updated

The writing on this website is powered by Markdown, not a CMS. The site itself is still a Next.js app with React components; the posts are simple .mdx files. Here’s why that approach makes sense.

Simplicity First

I wanted to write content, not manage components or props. Markdown gives me that direct, minimal writing experience.
It feels like working in a personal notebook that just happens to render as a full website.

No setup, no extra tooling, no distraction.

Just:

---
title: Hello World
date: 17 October, 2025
---
My first blog post.

And it becomes a page.

MDX: Markdown with React Superpowers

Markdown is great for text, but I still wanted to add React components where needed: interactive elements, code demos, or custom UI blocks.

That’s why I use MDX with Next.js.

MDX lets me mix content and components naturally:

Here’s a counter inside a blog post:

<Counter />

This allows me to build interactive sections without leaving the Markdown flow.

Easy Version Control

All my posts are stored as .mdx files, which means they work seamlessly with Git.
I can track changes, create branches for drafts, and push updates like any other code commit.

No database, no CMS dashboard, no authentication layers.
If I want to publish, I commit and deploy.


This means that if I want to make any minor changes to my website, or even post a new blog article, I can do it while I'm going to the grocery store or waiting in line for coffee.

Performance and Portability

The blog routes are generated from files during the build, so reading a post does not require querying a CMS or database. The wider site still has runtime features, including dynamic follower data and the terminal chat.

That keeps the content layer lightweight while letting the application stay dynamic where it actually needs to be. A fully static host would require a proper Next.js static export and removing or adapting those runtime features.

Developer Aesthetic

Writing Markdown feels natural. It’s how developers document projects, write READMEs, and take notes.

There’s no need for a visual editor when I can stay inside my code environment and keep full control over structure and styling.

The Stack

Here’s what powers the site:

  • Next.js for the framework
  • gray-matter for frontmatter
  • next-mdx-remote and @next/mdx for Markdown + React support
  • Tailwind CSS for styling
  • Motion and small custom React components for animations

That’s the full setup.
No CMS, no plugins, no unnecessary complexity.

Closing Thoughts

Building the writing side of this site in Markdown keeps everything simple, flexible, and version-controlled. It’s a reminder that sometimes, the simplest tools are still the best, especially when they integrate perfectly into a developer workflow.

That same bias toward smaller surfaces shows up in Simplicity the Saviour.

sources (3)
  1. Markdown and MDX Next.js
  2. Static exports Next.js
  3. MDX documentation MDX

disagree?

write what you wanna fight about and i'll read it.