March 29, 2026

A few weeks ago I decided to rebuild my personal site from scratch. Not because the old one was broken, but because it no longer reflected how I think about my work. I wanted something that communicated both sides of what I do: site reliability engineering and AI systems, without looking like a generic template.

I built the whole thing using Claude Code, Anthropic’s CLI tool that runs AI directly from your terminal. Here is what I learned.

The Stack

Custom WordPress theme, built from scratch. No page builder, no parent theme. PHP templates, CSS custom properties, and a design system I ended up calling Indigo Slate. The palette is dark, with a near-black background at #0D0D12, indigo accent at #6366F1, a warm gold for highlights. Typography is Space Grotesk for headings and Inter for body copy.

The site has a terminal boot animation on the hero, an experience section that uses a vertical timeline with metric chips and tech tags for each role, and a full projects grid that pulls from my GitHub showcase repo. Nothing on the site came from a template. Every decision was deliberate.

How Claude Code Actually Helped

I have used AI coding tools before and the usual experience is: great for boilerplate, unreliable for anything with real context. Claude Code was different, and I think the reason is how it handles the project as a whole rather than treating each prompt as isolated.

The turning point was getting the right setup in place. Claude Code supports MCP integrations, connectors that give it access to external tools. Once those were configured alongside the right skills, it stopped feeling like a chatbot and started feeling like a collaborator who had actually read the codebase.

It would read existing files before making changes. It would flag when a proposed change conflicted with something already in the code. When I described what I wanted at an architecture level: “the experience section should have a vertical timeline rail with a glowing dot for the current role and metric chips for each position”. It came back with working code that fit the existing patterns. I was not copy-pasting snippets and hoping for the best. I was reviewing, directing, and approving.

Things That Surprised Me

Context persistence across a full design system. I expected things to fall apart when the scope grew. They did not. The CSS variables, the PHP templates, the JavaScript animations. Claude Code kept track of all of it across a long session without me needing to re-explain the foundations.

Terminal-to-production workflow. Once the workflow was dialed in I could deploy changes to production directly from the terminal. Zip the theme, upload via the WordPress admin API, done. No browser context switching, no manual steps.

Writing against real patterns, not generic ones. The code it produced matched my existing code style. Variable naming, spacing, how I structure PHP template parts. It picked these up from reading the files and followed them consistently.

What This Is Not

It is not AI doing the work for you. I made every architectural decision on this site. I approved every change before it went in. I caught mistakes and redirected when something was off. The judgment calls were mine.

What it removed was the friction. The part where you know what you want but have to spend two hours translating it into working code before you can even evaluate whether the idea was good. That friction compounds on a project like this, and removing it changed what was possible in a single session.

Worth Seeing

The site is live at chadlester.com. I also posted a shorter version of this on LinkedIn: view the LinkedIn post.

Curious what tools other engineers are pairing with Claude Code for this kind of work. Drop a comment or reach out directly.