Tools

What I use day to day — my personal stack, from the hardware on my desk to the services I run. The stack this site itself is built and run on is at the bottom.

Daily drivers

iPhone 17 Pro
Phone.
MacBook Pro M1
Laptop — being replaced by a MacBook Air M5.
Custom desktop
Self-built, running CachyOS.
AYN Thor
Dual-screen Android handheld.
Keychron
Low-profile keyboards.
Logitech MX Vertical
Ergonomic mouse.
LG 45" 5K2K OLED
Monitor.
Audio
Various headphones and studio monitors.

Local AI hardware

Ryzen AI MAX+ 395 box
16 cores / 32 threads with Radeon 8060S graphics — my local AI box, running Fedora.

AI software

omp (oh-my-pi)
My daily agent harness — a pi.dev derivative.
llama.cpp
Local inference.
Paseo
Mobile access to my agents.
ComfyUI
Image generation.

Editors & tooling

VS Code
Main editor.
Zed
Fast editor, for quick edits.
OpenCode
AI coding agent.
Ghostty
Terminal — currently exploring, on CachyOS defaults for now.
Forgejo
Self-hosted git hosting.
Forgejo Actions
CI/CD.
RustDesk
Remote desktop.

Software & apps

Firefox
Browser.
Signal
Messaging, mostly.
Blinko
Notes — the latest of several I'm trying.
Bitwarden
Password manager.
VoidAuth
SSO for my self-hosted services.

Self-hosted services

Everything I can get away with — this is by far the largest category, and I'm still building it out.

Homelab

Local compute
A custom rig in a SuperMicro housing, plus assorted mini PCs.
Remote compute
Two virtual private servers.
Networking
Mostly UniFi hardware, with Pangolin and NetBird for remote access.
Software
Proxmox and Unraid.

Site stack

Everything this site is built and run on — deliberately small, static where possible, self-hosted where it matters.

Astro
The static site framework this site is built with — content-driven pages, zero JavaScript by default.
Markdown + MDX
All blog posts and project pages are written as Markdown with Zod-validated frontmatter.

Language & tooling

TypeScript
Strict mode throughout — frontmatter schemas, configs, and components.
Node.js
Runtime for the build and tooling (v22+).

Search

Pagefind
Client-side, zero-config search over the built site — no server, no tracking.

Version control & CI/CD

Forgejo
Self-hosted git hosting for this project.
Forgejo Actions
CI builds the site and deploys it on every push to main.

Server

Caddy
Reverse proxy, TLS, and static file serving.
Docker
Runs Forgejo and the build runner in containers.
Linux
The server OS under everything.