Getting Started with This Blog
Welcome to my developer blog! In this first post I'll give a brief overview of the tech stack I'm using.
Tech Stack
This blog was built with:
- 11ty - Static site generator for building the HTML pages
- Tailwind CSS v4 - For styling
- Parcel - Bundles CSS and JavaScript
- Liquid - Template engine for dynamic content
- Markdown - As the writing format
Deployment
The workflow is simple:
- Posts are written in Markdown and then built with
pnpm. - Git commit is pushed to my self-hosted Gitea.
- Coolify is triggered via webhook, picks up the changes, and deploys automatically.
I host everything myself and use no external CDNs and no third-party analytics.
Coolify (https://coolify.io/) is essentially an open-source implementation of Netlify. It makes deploying web applications extremely easy. As a static HTML page, the blog can simply be deployed using an nginx:alpine image.
Code Example
Here's how the multi-language collections work in 11ty:
eleventyConfig.addCollection("postsUnique", function (collectionApi) {
const allPosts = collectionApi.getFilteredByTag("posts");
const uniquePosts = new Map();
allPosts.forEach((post) => {
const slug = post.data.slug;
if (!uniquePosts.has(slug)) {
uniquePosts.set(slug, post);
}
});
return Array.from(uniquePosts.values());
});
This creates a collection that shows one card per post, even if it exists in multiple languages. The language badges indicate which versions are available.
What I Want to Write About
I want to write about everything that interests me, both personally and professionally.
Topics currently on the list:
- IBM Verify Identity Access & other topics from my professional day-to-day
- Home automation
- Self-hosting