dhung.dev
Personal developer site built with Next.js 16, featuring a minimal B&W design and MDX content pipeline
This website serves as my technical blog, project portfolio, and digital home. Built with modern web technologies and an emphasis on performance and maintainability.
Tech Stack
Framework: Next.js
UI: React, Tailwind CSS
Content: MDX with Zod validation
Deployment: Vercel Hobby
Type Safety: TypeScript
Design Philosophy
The site follows a strict black-and-white color palette with no accent colors. This constraint forces focus on typography, spacing, and content hierarchy. Dark mode is supported.
Every design decision prioritizes readability and accessibility over visual complexity. The result is a fast, focused reading experience.
Content Pipeline
The content system uses MDX for authoring with build-time frontmatter validation via Zod schemas. This ensures content quality without runtime overhead.
Key features:
- Automatic reading time calculation
- Draft filtering (development vs. production)
- Type-safe content utilities
- Custom MDX components (Callout, CodeBlock)
Lessons Learned
Building this site reinforced several principles:
- Constraints breed creativity: The B&W palette forced better typography and hierarchy decisions
- Build-time validation pays off: Zod schemas catch content errors before deployment
- Server Components are powerful: Most pages ship zero client JavaScript
The complete architecture and decision rationale are documented in the repository's /docs
folder. Every major choice is explained and justified.
This project demonstrates that a personal site can be both technically sophisticated and visually minimal.