My work

Projects

Things I’ve built on my own, and the kind of work I’ve seen during my internship. Everything here is a running system — documented well enough to be stood up on another machine.

01

This blog's infrastructure

The site itself: Next.js static export, Caddy, SQLite and automatic rebuilds. Why does a post go live 40 seconds after I write it?

  • Next.js
  • Tailwind
  • Caddy
  • Docker
02

Automated backup system

A single script that backs up eight Docker volumes and their configuration every day, then opens the archive to check it can actually be read.

  • Python
  • Bash
  • systemd
03

Server monitoring

uptime-kuma and ntfy, set up so that a notification lands on my phone when a service goes down.

  • uptime-kuma
  • ntfy
  • Docker
04

A fully local AI bot

I hooked a Discord bot up to a model running locally with Ollama; not a single request leaves the server.

  • Python
  • Ollama
  • discord.py
05

SSH and password management

Turning off password logins in favour of key-based access, and running a password vault with Vaultwarden.

  • OpenSSH
  • fail2ban
  • Vaultwarden