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.