Tools
Small tools I built for myself. They run this site and the apps around it, all on one server. They aren't products and you can't sign up for them; this page is the why and the how.
Quill
WritingWhy. I wanted to write without a CMS. Quill serves blog.thesshguy.com, and the only way to write a post is through an MCP server, so drafting happens in the same place I already work.
How. One Remix 3 app and one SQLite database, serving posts for several domains by request host. Drafts are previewed on an admin hostname behind Cloudflare Access before they go live.
Peek
AnalyticsWhy. I replaced Plausible with it. I want to know what gets read across my sites without cookies, without storing anyone's IP address, and without paying for a hosted service to do it.
How. A small script reports page views to a Remix 3 app backed by SQLite. It only accepts traffic from an allowlist of domains, wildcards included, and its dashboard sits behind Cloudflare Access.
Envoy
Deploys & secretsWhy. The AI agents I work with need to do privileged things: deploy, create repos, add tunnel hostnames. I didn't want them holding the keys, so Envoy holds them instead.
How. Every action is a version-controlled script that only takes effect on redeploy. Scripts name secrets with placeholders that Envoy resolves internally against an allowlist, and scheduled jobs, like deploying this site once CI goes green, run on an in-process cron.