Posts
- I built a webhook debugger for local development
webhooklocal gives you a private URL that never changes, stores every webhook, forwards it to localhost, and lets you edit and replay any request. It is in private beta and I am looking for testers.
- I rebuilt this site from scratch in Go
This site ran on Hugo for years. Now it is a small Go server with templ, HTMX and SQLite in one binary, with an admin page where I write posts in the browser.
- How I run omp on my laptop
omp is the terminal agent I do most of my work in. Obsidian is where it keeps its notes, and omp-lb is a small local panel for seeing what it is doing. This is how the three fit together.
- Querying exported CSVs with DuckDB
DuckDB is an in-process SQL database like SQLite, but columnar and built for analytics. I use it to run SQL straight over CSV exports on my laptop without loading anything first.
- Cheap centralized logs with Loki and S3
One Helm chart puts Kubernetes pod logs and the CloudWatch logs from RDS, Lambda and ElastiCache into Grafana Loki, with S3 as the store. A year of retention costs a dollar or two a month.
- What's running in my homelab
One i5-8500T box running Proxmox, one LXC container per service, and a cheap VPS doing the public-facing part over frp.
- Single sign-on for my homelab with PocketID
PocketID is a small OIDC provider with passkey login. I put it in front of the self-hosted apps so there is one login instead of one per app.
- Reaching my homelab through a cheap VPS with frp
My home server has no open ports and no static IP. It dials out to a small VPS running frp, and the VPS is the only thing on the public internet.
- A dozen services behind one Caddy
One Caddy on a small VPS is the only thing listening on 80 and 443. Every service I host, local or tunnelled from home, is a few lines in a single Caddyfile.
- Goodbye kitty
After two years on Kitty I went back to tmux in a plain terminal. Some rendering bugs started it and the author's FAQ finished it.