Hello, World (Again)
July 17, 2026
Welcome to the first post on the rebuilt World of Obi.
This site started as plain HTML, CSS, and Bootstrap. It’s now an Astro project written in TypeScript — same look, same feel, but posts like this one are just Markdown files in a folder.
How a post gets here
Every post is a .md file in src/content/blog/. The frontmatter at the top is type-checked at build time, so a typo in a date or a missing title fails the build instead of silently breaking the page.
const blog = defineCollection({
loader: glob({ pattern: '**/*.md', base: './src/content/blog' }),
schema: z.object({
title: z.string(),
pubDate: z.coerce.date(),
tags: z.array(z.string()).default([]),
}),
});
Code blocks get syntax highlighting out of the box, links work, and images drop in like any Markdown doc.
More posts on FPGAs, low-latency C++, and whatever else I’m building — coming soon.
← All posts