Personal Website and Email
This is something I've been putting off for a long time.
8/17/2026
I’m happy to have a place to dump my thoughts and write about personal projects. I’m not much of a writer. Part of my reason for setting this up is to practice writing about things I enjoy writing about. This is a post I’m writing mostly so the posts page is not empty.
Website
Tech
The website is built with SvelteKit and mdsvex. I write posts in Markdown and links to each post are automatically generated on the posts page. The site is fully statically generated at build-time. I like being able to host it anywhere as easily as possible, and I don’t want to deal with SSR/CSR/Hydration or any of that nonsense — I deal with that stuff enough at work!
Here is the block of code that runs to populate the posts page, because I want to see how code blocks look:
export async function load() {
const postModules = import.meta.glob('./*/*.md', { eager: true });
const posts = Object.entries(postModules).map(([path, mod]) => {
const href = 'posts/' + path.split('/').slice(0, -1).join('/');
const { metadata } = mod as { metadata: Omit<PostData, 'href'> };
return { href, ...metadata };
});
return { posts };
} Looks good. I really like gruvbox.
The website source is available here.
Style
I don’t like designing fancy websites. I’m not good at it. I like websites that load fast and look good enough. I think this website’s design is a reflection of that.
Who doesn’t want an email with their own domain. The Gmail address I’ve been using since I learned to set it up has become a nearly irredeemable wasteland of marketing and spam. It’s nice to start fresh.