HomeProjectsBlog
Blog

Welcome to the blog

A short introduction to the new MDX-based blog system in this playground project.
2 min read

This blog is powered by MDX, so posts can mix markdown with React-friendly formatting and still stay fully server-rendered.

Why this setup

  • Posts live in the content directory.
  • Frontmatter is parsed at build time.
  • Pages are statically generated for fast delivery.

How styling works in this blog

MDX content is not styled directly. Instead, each markdown element is mapped to a custom React component, which applies consistent styles across the blog.

For example:

  • Headings like ### are rendered using custom <h3> components.
  • Paragraphs are wrapped in styled <p> tags.
  • Lists, code blocks, and tables all use predefined styles.

This makes it easy to maintain a consistent design system while still writing simple markdown.

MDX to Styling Mapping

What I wrote in MDXHow it is styled
# HeadingStyled as large heading using custom h1 component
## HeadingStyled using h2 with separator below
### HeadingStyled as medium heading h3
Normal textRendered as paragraph with readable spacing
**bold text**Styled with stronger font weight
*italic text*Styled with italic + foreground color
[link](url)Styled link with underline effect
- list itemStyled unordered list with spacing
1. itemStyled ordered list
`inline code`Highlighted inline code block
Code block (```)Styled code container with padding + background
> quoteStyled blockquote with left border
![img](url)Rounded image with border + shadow
Table syntaxWrapped in scrollable container with borders

Thanks for reading :)