Build Anything With Claude & WordPress

๐ **Source:** [Build Anything With Claude & WordPress](https://slides.austinginder.com/2026-07-16-build-anything-with-claude-and-wordpress/#deck)
> [!note]+ Document Notes
> ---
> tags: [claude-code, wordpress-development, ai-assisted-development, design-to-code, self-hosted-deployment]
> author: Austin Ginder
> source: WordPress Lancaster Meetup (slides.austinginder.com)
> reference: https://slides.austinginder.com/2026-07-16 build anything with claude and wordpress/
> date created: {{date:YYYY-MM-DD}} {{time:HH:mm}}
> ---
> # ๐ท๏ธ Title: Build anything with Claude & WordPress
> ## ๐งญ Table of Contents
> - [๐ Summary](#-summary)
> - [๐ Main Content](#-main-content)
> - [๐๏ธ Notes](#๏ธ-notes)
> - [๐ References](#-references)
> - [๐ฃ๏ธ Paraphrase](#๏ธ-paraphrase)
> - [๐ฐ Newsletter](#-newsletter)
> - [โ
Action Items](#-action-items)
> - [๐งช Hypotheses](#-hypotheses)
> - [๐ Methodology](#-methodology)
> - [โ Questions](#-questions)
> - [๐ฎ Future Research](#-future-research)
> - [๐ก Implications](#-implications)
> - [๐ง Learning Styles Assessment](#-learning-styles-assessment)
> - [๐ Accessibility Assessment](#-accessibility-assessment)
> - [๐ DEIB Assessment](#-deib-assessment)
> - [โ
Logical Validity](#-logical-validity)
> - [๐ก๏ธ DARVO Analysis](#-darvo-analysis)
> - [๐ฏ Conclusion](#-conclusion)
> ### ๐ References
> - [Talk slides โ Build anything with Claude & WordPress](https://slides.austinginder.com/2026-07-16 build anything with claude and wordpress/)
> - [Anchor Hosting](https://anchor.host)
> - [Cove โ local WordPress dev CLI](https://cove.run)
> - Companion piece: Ginder's AI-security-pipeline article (Dismissed.FYI methodology, processed in parallel)
> ## ๐ Summary
> - **What happened.** Austin Ginder, a mostly-solo operator of Anchor Hosting (a few thousand WordPress sites), gave a 21-slide Lancaster Meetup talk on shipping real WordPress software through conversation with Claude Code. Since February 2026 he builds almost everything this way, and the talk is a tour of what he actually shipped this spring, not theory.
> - **Why it matters.** His pipeline โ Design in Claude โ DesignSync โ Claude Code โ local dev on Cove โ browser verification โ GitHub-release-as-deploy, with Emoji-Log commits and a per-project "cut a release" skill โ is nearly identical to Courtney's own documented WP plugin/theme release workflow. It's an external, independently-arrived-at validation of her stack.
> - **Key stakeholders.** Solo developers and small agencies shipping custom WordPress; the WordPress community weighing AI-assisted build practices; Anthropic (Claude Code / Claude Design as the tool surface).
> - **Risks and tradeoffs.** The Dismissed.FYI project surfaces a real safety failure (a nag baked a customer's account name into a public card) and a corrective "hard architecture pivot" to local sandboxes. The through-line: the agent does exactly what you steer it to, so responsibility stays with the human.
> - **Bottom line.** The valuable artifact has shifted from code to direction. WordPress is a near-ideal target because plugins, DB tables, REST, and CLI are all buildable in a conversation using skills the developer already has.
> ## ๐ Main Content
> - **The one idea.** Ginder's thesis is that with open source the code was the valuable thing you shared; with AI, the valuable thing is *how you directed the agent* to produce it. The bottleneck moved from typing to steering. "Build anything" is now literal because a few sentences of architectural direction can drive 30 minutes to an hour of complicated programming.
> - **What a conversation produces.** Not a chatbot answer โ a running WordPress site: custom plugins, database tables, REST APIs, themes, WP-CLI commands. He stresses "real WordPress, all the way down": no lock-in, no new framework. The existing skill set (WP-CLI, PHP, git) becomes the steering wheel. This is the load-bearing claim for a WordPress DevRel audience โ the moat is domain fluency, not prompt trickery.
> - **The workflow (idea โ live site in one session).** Five steps: (1) Design the whole UI as a Claude Design project, a `.dc.html` prototype; (2) pull it into Claude Code where DesignSync reads the design and translates it to WordPress (`sc-for` โ PHP loop, `onClick` โ a real route, hover โ CSS); (3) build and run locally on Cove (cove.run) before touching production; (4) verify in a real browser โ Claude drives Chrome, screenshots light + dark, catches what code review misses; (5) ship via self-hosted updates โ a GitHub release plus a `manifest.json` self-updater, no wp.org, no CI.
> - **Three projects across a scope spectrum.** *League Report* (92 days, 30 sessions, 561 human turns) rescued years of amateur softball league history from a shutting-down platform โ crawled the dying platform into SQLite, imported 3,045 leagues, produced 14 DB tables / 22 REST controllers / 19 page templates, solo, no git repo, shipped by zipping and `wp ... install --force` over SSH. *Dismissed.FYI* (28 days, 20 sessions) is a hall of shame for WordPress admin-notice spam, built as a direct port of a single morning's Claude Design mockup, using PHP Reflection to pin each notice's exact `file:line`. *Rutter* (one 22-turn evening, ~2.5h) shares the *flow* of an AI build the way GitHub shares code.
> - **Contested / uncertain points.** The productivity figures (~5,900 lines of working code by end of session one) are self-reported and project-specific. "Build anything" is aspirational framing โ the talk's own scope spectrum shows effort scales enormously (1 evening vs. 92 days). The safety incident is disclosed honestly rather than hidden, which strengthens rather than undercuts credibility.
> - **Term definitions.** *DesignSync* โ the mechanism that reads a Claude Design `.dc.html` prototype and translates its markup/interactions into WordPress PHP/CSS/routes. *Emoji-Log* โ a commit convention with a fixed verb set (NEW / IMPROVE / FIX / DOC / RELEASE). *`manifest.json` self-updater* โ a self-hosted plugin/theme update channel where a GitHub release is the deployment. *rutter* โ a sailor's book of directions; here, a browsable recap of how a human steered an agent.
> ### ๐๏ธ Notes
> - **Slide 02 โ the operator.** Anchor Hosting, a few thousand WordPress sites, mostly solo, one laptop since 2012, Claude Code for almost everything since Feb 2026. Framing: "not theory, what I actually shipped this spring."
> - **Slide 03 โ the thesis.** Open source shared the code; AI makes the *direction* the valuable, shareable thing. Bottleneck moved from typing to steering.
> - **Slide 04 โ output shape.** A conversation yields a running site (plugins, tables, REST, themes, WP-CLI). "Real WordPress, all the way down: no lock-in, no new framework to learn." Existing skills are the steering wheel.
> - **Slide 05 โ direction density.** "Name the architecture, and a few key terms drive some very complicated programming." A landing page is quick; a custom engine takes longer but needs little more direction.
> - **Slide 06 โ the pipeline.** Design in Claude (`.dc.html`) โ Claude Code via DesignSync โ local on Cove โ browser verify (light + dark screenshots) โ self-hosted GitHub-release-as-deploy. **This maps almost one-to-one onto Courtney's documented workflow** (`page-{slug}` templates, deployer-based self-hosted release, browser QA).
> - **Project 01 โ League Report.** Real-world rescue of a dying softball-league platform. Non-technical commissioners edit scores/rosters inline on the live page, no wp-admin. Claude even named the project. Notable human moment during v2: "Bahโฆ I think it was better before. Can we revert?" โ AI-assisted work still needs taste and rollback.
> - **Project 02 โ Dismissed.FYI.** Direct port of a design; code comments say "mirrors the design's data.js." Uses PHP Reflection to enumerate admin-notice callbacks and pin `file:line`; severity from how much of wp-admin a notice hijacks; ranked by intent (Critical = pure vendor benefit, Low = serves the user). Renders in a throwaway local sandbox fed by a wp.org mirror. **July 1 hard architecture pivot** after a nag leaked a real customer's account name into a public card โ retired all live-site rendering. Safety lesson: "The agent will do exactly what you steer it to. That responsibility stays yours."
> - **Project 03 โ Rutter.** Built in one 22-turn evening. `rutter-core` = custom table + `/r/<slug>/` routing + a WP-CLI command. Dogfooded immediately: the first recap wa
#### 02 ยท Who's talking: A developer, one laptop, a few thousand sites.
- I run **Anchor Hosting**, a few thousand WordPress sites, mostly solo.
- Developer first. One laptop since 2012.
- Since February 2026, I build almost everything with **Claude Code**.
- Tonight isn't theory. It's what I actually shipped this spring.
#### 03 ยท The one idea to take home: The code output isn't the valuable part anymore. The direction is.
- With open source, the valuable thing was the code. You shared the code.
- With AI, what's valuable is **how you directed the agent** to get there.
- "Build anything" is real now. The bottleneck moved from typing to steering.
#### 04 ยท What "a conversation" actually produces: Not a chatbot answer. A running WordPress site.
Custom plugins, database tables, REST APIs, themes, WP-CLI commands. Real WordPress, all the way down: no lock-in, no new framework to learn. The same skills you already have (**WP-CLI, PHP, git**) are now the steering wheel.
#### 05 ยท What the direction looks like: A few sentences of direction. Thirty minutes of building.
The direction: "Take this design and make a custom WordPress theme. Build a custom plugin for the engine โ it should have a custom database table." Those few sentences can run for **30 minutes to an hour**. A simple landing page is quick; a custom engine takes a while โ but it's not much more direction. Name the architecture, and a few key terms drive some very complicated programming.
#### 06 ยท The workflow, idea to live site: Idea in a conversation, live site by end of the session.
- **Design in Claude** โ Mock the whole UI as a Claude Design project, a `.dc.html` prototype.
- **Pull it into Claude Code** โ DesignSync reads the design; Claude translates it to WordPress. `sc-for` โ PHP loop, `onClick` โ a real route, hover โ CSS.
- **Build & run locally on Cove** โ Every project runs locally on my Mac via cove.run before it ever touches production.
- **Verify in a real browser** โ Claude drives Chrome, screenshots light + dark, catches what code review misses.
- **Ship via self-hosted updates** โ GitHub release + a `manifest.json` self-updater. The release is the deploy. No wp.org, no CI.
#### Project 01 ยท League Report โ the real-world rescue.
LeagueLineup / Stack Sports announced they were shutting down, and years of amateur softball league history were about to be deleted. Every league gets its own private, secret URL: schedule, standings, results, rosters, photos, news, files, member directory. Non-technical commissioners edit scores and rosters **inline on the live page**, no wp-admin. Crawled the dying platform into SQLite, imported **3,045 leagues**. Claude even named the project โ "League Report" was a placeholder I asked it to replace. What got built: 14 DB tables, 22 REST controllers, 19 page templates. What it took: 92 days, 30 Claude Code sessions, 561 human turns of direction. ~5,900 lines of working code by the end of session one. 103 screenshots handed over, 26 hard interrupts, 7 course-corrections. Solo, no git repo. Ships by zipping and `wp ... install --force` over SSH. A real human moment during the v2 redesign: "Bahโฆ I think it was better before. Can we revert?"
#### Project 02 ยท Dismissed.FYI โ designed in a morning.
A public hall of shame for WordPress admin-notice spam: every license nag, review beg, telemetry opt-in and upsell, catalogued and ranked by intent. The WordPress build is a **direct port of the design** โ started as a single Claude Design mockup one morning (Jun 5); the code comments literally say "mirrors the design's data.js." 11 of 20 sessions opened with a saved slash-command workflow I'd codified. 28 days, 20 sessions, 269 turns. The clever part: not scraping HTML, reflecting into the code itself. Admin notices are just callbacks โ enumerate them, then use **PHP Reflection** to pin the exact `file:line`. Severity = how much of wp-admin it hijacks; renders on 3+ unrelated screens = auto-critical. Ranked by intent: Critical = pure vendor benefit, Low = actually serves you. Everything renders in a throwaway local sandbox, fed plugin files from a wp.org mirror, never a live site. Building responsibly: early versions rendered notices against live sites, and one nag baked a real customer's account name into a public card. **July 1: hard architecture pivot** โ retired all live-site rendering, moved to local sandboxes. The agent will do exactly what you steer it to. That responsibility stays yours.
#### Project 03 ยท Rutter โ built in one evening.
Open source for AI builds. GitHub shares the code. Rutter shares the flow: browsable recaps of how a human steered an agent. A rutter is a sailor's book of directions. Conceived and built in a single 22-turn Claude Code session, one evening (~2.5 hours). Design as a `.dc.html`, imported over the design MCP, hand-built into a theme + plugin. `rutter-core`: a custom table, its own `/r/<slug>/` routing, a WP-CLI command. Dogfooded immediately โ the first recap was Rutter's own build data. 1 evening, 22 turns, ~2.5h start to ship.
#### 16 ยท The spectrum: Same workflow. Wildly different scope.
League Report (92 days, a full platform for real clients); Dismissed.FYI (28 days, designed in a morning); Rutter (1 evening, idea to live site in one sitting). "Build anything" means anything.
#### 17 ยท Built the same way, the lightning roster.
The same pipeline runs across everything I ship: WP Beacon (wpbeacon.io, plugin supply-chain intelligence, backed by a full git mirror of wp.org); WP Registry (wpregistry.io, a content-addressed WordPress security registry); Minn Admin (reimagined wp-admin, a no-build SPA served alongside the classic wp-admin); Disembark (disembark.host, dark single-page marketing site for the backup product); Seafloor (page content as structured JSON, edited entirely from WP-CLI); Anchor Blocks (custom server-rendered Gutenberg blocks for the blog); Cove (cove.run, the local WordPress dev CLI every one of these runs on); CaptainCore (anchor.host, the fleet control plane behind the whole operation).
#### 18 ยท Tips & tricks for getting the most out of Claude Code.
- **Design first.** Mock the UI, then let Claude translate it to PHP. Implement against a spec, not a guess.
- **Never touch prod directly.** Every project gets a `*.localhost` site first.
- **Make it verify in a browser.** Claude drives Chrome and screenshots both themes before "done."
- **Persist hard-won architecture as memory.** Gotchas survive across sessions.
- **Standardize your commits.** Emoji-Log: NEW / IMPROVE / FIX / DOC / RELEASE.
- **Self-host updates.** A `manifest.json` self-updater. The GitHub release is the deploy.
- **Mine your own history.** command-center indexes 1,400+ past sessions, so your prior AI work becomes a reusable knowledge base.
#### 19 ยท One skill, the whole release: One skill per project. Then just say "cut a release."
`/dev-minn-admin โบ cut a release`. One runbook holds every step; two words run all of it: (1) runs the full **Playwright test suite** โ green, or no release; (2) bumps the version in all four places, dates the changelog; (3) commits, zips, and publishes the GitHub release; (4) regenerates the screenshots from the live app; (5) refreshes the marketing homepage โ new plugins, feature claims; (6) deploys it, purges cache, verifies it's live.
#### 20 ยท Takeaways: The code is cheap now. The direction is the craft.
- WordPress is the perfect target: plugins, tables, REST, CLI, all buildable in a conversation.
- Design in Claude, build in Claude Code, run it on real WordPress.
- You already have the skills to steer. Start with one small idea.
#### 21 ยท Q&A + demo
Discussion, and a live look at any of the three: League Report, Dismissed.FYI, or Rutter. Presenter's opening note: "I run Anchor Hosting mostly solo. Tonight is what I actually shipped this spring, not theory.", Build Anything With Claude & WordPress, Austin Ginder, 01kxtrxtyh1efe5cx195d9c5p9.