Hello, World

Hello, World

This is the first post on this blog. If you're reading this, everything is working.

What this is

A personal blog built from scratch. No CMS, no database — just Markdown files, Next.js, and static generation. The design is intentionally minimal: monospace font, warm muted colors, and an ASCII art logo that makes it feel like a terminal.

The stack

  • Next.js with the App Router and static generation
  • Tailwind CSS for styling
  • Markdown files with YAML frontmatter for content
  • Vercel for hosting

Code example

Here's a function that reads all the posts:

export function getAllPosts(): Post[] {
  const files = fs.readdirSync(postsDirectory);
  return files
    .filter((file) => file.endsWith(".md"))
    .map((file) => getPostBySlug(file.replace(/\.md$/, "")))
    .sort((a, b) => (a.date > b.date ? -1 : 1));
}

What's next

Writing things down. Mostly about code, sometimes about other stuff. We'll see.