kjuulh 9086f7833d
All checks were successful
continuous-integration/drone/push Build is passing
feat: add plausible
Signed-off-by: kjuulh <contact@kjuulh.io>
2025-08-11 10:48:36 +02:00
2025-08-05 22:48:27 +02:00
2025-07-31 11:14:46 +02:00
2025-07-31 12:14:44 +02:00
2025-07-31 11:14:46 +02:00
2023-04-09 12:27:51 +02:00
2025-08-11 10:48:36 +02:00
2025-07-31 11:24:57 +02:00
2023-04-03 02:49:17 +02:00
2025-07-31 11:16:31 +02:00
2025-07-31 11:16:31 +02:00
2025-07-31 11:01:22 +02:00
2025-07-31 11:43:39 +02:00
2023-04-03 02:49:17 +02:00
2025-08-05 22:53:55 +02:00
2023-07-27 01:11:18 +02:00
2023-04-02 16:42:13 +02:00
2023-04-02 16:42:13 +02:00

Kasper Hermansen's Blog

A personal blog built with Zola (static site generator) and deployed using containerized CI/CD with Dagger.

Prerequisites

  • mise - Development environment manager
  • Rust - For running Dagger CI
  • Docker - For containerization

Development

Quick Start

# Install dependencies and start dev server
mise run dev

This will:

  • Start Zola dev server on http://localhost:8000
  • Watch and compile Tailwind CSS changes
  • Show posts in progress

Available Commands

mise run dev        # Start development server with live reload
mise run ci:pr      # Run CI build for pull requests
mise run ci:main    # Run full CI pipeline (build + deploy)

Deployment

The blog uses a fully automated CI/CD pipeline built with Dagger (Rust SDK).

Manual Deployment

# Build and deploy to production
(cd ci && cargo build)
./ci/target/debug/ci main

This will:

  1. Compile Tailwind CSS styles
  2. Build static site with Zola
  3. Package with Caddy web server
  4. Push Docker image to registry
  5. Update deployment configuration in git

Automated Deployment

Pushing to main branch triggers automatic deployment via CI.

Project Structure

├── content/posts/     # Blog posts (Markdown with YAML frontmatter)
├── templates/         # Zola templates (Tera)
├── static/           # Static assets
├── styles/           # Tailwind CSS source
├── ci/               # Dagger CI/CD pipeline (Rust)
├── deployment/       # Caddy server configuration
├── config.toml       # Zola configuration
└── mise.toml         # Development tasks

Adding Content

Create a new post in content/posts/:

+++
title = "Your Post Title"
description = "Brief description"
date = 2025-01-01
draft = false
[taxonomies]
tags = ["rust", "development"]
+++

Your content here...
Description
No description provided
Readme 4.8 MiB
Languages
CSS 79.7%
HTML 11.3%
Rust 8.5%
JavaScript 0.5%