Blog

Building My Personal Site with Next.js and MDX

·2 min read
Next.jsMDXWeb Development

Building a personal website is one of those projects that developers often overthink. I certainly did. But after studying sites like antfu.me and other developer portfolios, I landed on a philosophy: keep it simple, make it fast, let the content speak.

Why Next.js + MDX?

I wanted a stack that would let me:

  1. Write content in Markdown (no CMS overhead)
  2. Get excellent performance out of the box
  3. Have full control over the design
  4. Deploy for free on Vercel

Next.js with the App Router and MDX checked every box. The file-based content approach means I can write posts in my editor, commit to Git, and have them live in seconds.

The Design Philosophy

Inspired by antfu.me, I went with:

  • Dark mode by default — it's 2026, embrace the darkness
  • Minimal chrome — let the content breathe
  • Subtle interactions — hover effects and smooth transitions, not flashy animations
  • Bilingual support — because my audience spans English and Indonesian speakers
// The entire theme system fits in CSS variables
:root {
  --color-bg: #ffffff;
  --color-text: #2c2c2c;
  --color-accent: #4ade80;
}

.dark {
  --color-bg: #121212;
  --color-text: #e0e0e0;
}

What's Next

I'll be adding more projects, writing about my experiences with Rust and Tauri, and building out the contact form with Resend integration. Stay tuned!


← All postsThanks for reading!