Skip to content

I use Google Analytics to understand what gets read, shared and clicked here. It only loads if you accept — nothing third-party runs before that. How Google uses this data

Portfolio

Open source for you to study, clone and use. It grows as automations graduate.

The bar for getting listed here: docs/catalog-ready.md

This site — a static React/Vite SPA, built in an agent-first loop with Claude Code.

A static SPA (no backend) served from S3 + CloudFront and provisioned with Terraform. Delivery is plan-first, with blocking CI gates and deploy on merge. The repo is the source of truth.

What you take awaywhere to start reading the repo, and what to reuse: the ADRs record the load-bearing decisions, from plan-first to deploy — with the trade-off each one cost.

ReactViteTypeScriptTerraformGitHub ActionsClaude Code

The harness that builds this site — review personas, permission hooks, and a merge gate wired into the tool, not the prompt.

An agent produces plausible work fast; the bottleneck becomes trusting it. Here the verification is mechanical and the human keeps what is theirs: a reviewer judges the MR in a fresh context, and a hook refuses irreversible actions before the command runs, leaving them to you.

What you take awaywhat you can install into your own repo today, and what is a reference pattern — the README publishes how to tell them apart rather than leaving you to find out per file.

Claude CodeBashGitHub Actions