Getting Started with This Blog

Language: English Deutsch
meta eleventy self-hosting

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:

  1. Posts are written in Markdown and then built with pnpm.
  2. Git commit is pushed to my self-hosted Gitea.
  3. 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