Thoughts

WordPress is dead. Good.

WordPress is dead. Good.

A retired friend of my mom’s, with no technical background and no business writing code, just shipped her own website using a static site generator and an AI chatbot. She had never heard the words “Middleman” or “Cloudflare Pages” four months ago. She did it anyway. It’s beautiful, it loads instantly, and it costs her zero dollars a month to keep online. That’s genuinely impressive, and it should not be possible. A year ago it wasn’t.

That should end the conversation about whether WordPress still has a job.

The least worst option, for a long time

WordPress powers around half the internet, and most of the people running it don’t want to be running it. They run it because it was the least worst option. Every alternative had a worse tradeoff: hosted page builders locked you in, custom code priced you out, and the rest were vaporware.

So WordPress won by default. Not because it’s good. Because everything else was worse.

In exchange, you got a constant low-grade hum of security work, plugins that conflict with other plugins, a backend server for the crime of having a contact form, a maintenance bill in perpetuity, and the slow accumulation of code that nobody can quite explain because it was bolted on by three different developers over five years. The “easy CMS” came with a permanent tax. People paid it because they didn’t see another way.

There is now another way.

What changed

The change isn’t the static site generators. Those have been around forever and they were always fine. The change is Claude Design and Claude Code. They got quietly good in the last several months, and they’re the reason a non-technical person can now sit down, describe the site they want, and get back a working design in a sitting. Claude Code then turns that design into a real, deployable site without anyone having to write a line of anything.

I use Middleman to assemble the output. Middleman rips, and I recommend it. But there’s no rule that says you have to. Pick whatever static site generator you like (Eleventy, Astro, Jekyll, Hugo), or skip the generator entirely and tell Claude Code to give you a plain HTML and CSS site. The outcome is the same.

My personal site runs on this stack. So does StriveDB, our SaaS for victim-service organizations. Both took roughly a weekend. Three or four hours of focused effort gets you a real site you’d be proud to put on a business card.

The StriveDB rebuild went from a server we had to babysit, with all the patching and uptime and security work that implies, to a free Cloudflare Pages deployment. Performance went up. Security work went to zero. We don’t even pay for hosting anymore.

For roughly the cost of one month of a Claude subscription, you can produce a marketing site that looks every bit as good as the WordPress site it replaces, loads faster, costs nothing to host, has effectively no attack surface, and requires no maintenance unless you want to change something.

I’m a security and infrastructure person by background. The “no attack surface” line is not marketing. A flat site has no database to compromise, no admin panel to brute force, no plugin to be exploited next Tuesday. There is nothing to hack. That alone is worth the move.

Why WordPress specifically loses to AI

This is the part most people miss. Claude is genuinely bad at WordPress, and it’s never going to get great at it. The reason is structural: WordPress hides everything important inside a database. Posts, pages, menus, theme settings, widget configurations, half the layout. Claude has to reason about a live SQL state to make even small changes, and the moment you have two environments (local, staging, production) the state drifts and nothing reproduces.

A static site is a folder of files. That’s it. Claude is extraordinary at folders of files. The skill curve goes vertical.

There is a long-running pain in WordPress land that I have been complaining about for at least a decade: it is fundamentally hard to keep code and content in sync between a local machine, a development environment, and production. People have built entire careers around managing that. With a static site, the problem evaporates. You have a folder. It’s the same folder everywhere. The end.

The schism

The WordPress ecosystem is about to split in two.

On one side, sites that are mostly content with a contact form. Marketing pages, consultancies, restaurants, nonprofits, podcasts, personal sites. All of these become Middleman (or Eleventy, or Astro, take your pick) plus Claude plus free hosting. They should never have been on WordPress in the first place. They were there because there was nowhere else to go.

On the other side, sites that are actually applications. E-commerce, membership portals, anything with real interactivity and user accounts. Those are not Middleman jobs. Those are Rails or Django jobs. Real frameworks for real software. Trying to make WordPress do that work was always a compromise too, just a different one.

WordPress is going to keep existing in the middle for a while, and a smaller and smaller share of people will need it.

“But I need a contact form”

Right. So do I.

The way this used to work was: spin up a backend just to receive form submissions, then pay forever to keep it alive. That is no longer the deal.

For the non-technical reader, services like Formspree, Web3Forms, and Getform exist for exactly this. They have free tiers that cover a small business contact form (a few dozen submissions a month), and the paid tiers are pocket change. You drop a snippet into your site, set the form to post at their URL, and submissions land in your inbox. That’s it. No server, no database, no Tuesday-morning plugin update.

If you outgrow the free tier, or want to do something fancier like file uploads or conditional logic, you can write a tiny piece of code yourself and run it on Cloudflare Workers, Netlify Functions, or AWS Lambda. Free tiers that almost no marketing site will exhaust, and zero servers to maintain. (My own contact form is a Lambda. It costs me nothing to run. I’m a tech guy. That part you can skip.)

You do not have to choose between “static site that does nothing” and “WordPress with a database.” The middle ground is well-paved, and most of it is free.

Your move

If you are… Do this
A small business owner with a WordPress site that still works Don’t panic. Keep it for now. The next time you would have paid for a redesign, build the replacement on Claude Design + Claude Code + a static generator + Cloudflare Pages instead. Faster, safer, cheaper, and you’ll actually understand what’s in it.
A small business owner starting a new site Skip WordPress entirely. Follow the playbook below. Ship in a weekend.
A solo consultant or freelancer paying for managed WordPress hosting Rebuild on the static stack in an afternoon. Cancel the hosting bill. The site you get back will load faster, cost nothing to run, and have no plugin to be exploited next Tuesday.
A marketing agency still selling WordPress redesigns Pivot, or watch this work move to the customer. Sell Claude Design + Claude Code engagements. Charge for the design taste and the strategy, not the WP plumbing. The ones still pitching Divi builds in 2026 are not the ones the good clients want.
A nonprofit or small org on a tight budget You’re the biggest winner. Free hosting, no maintenance contract, no surprise renewal. Get a volunteer or a $200 freelancer to help with the design step and you’re done.
A developer with a WordPress side project you’ve been meaning to kill You already know what to do. Stop reading. Start a Middleman project.
A founder running an actual web application (e-commerce, membership portal, real interactivity, real user accounts) This post isn’t for you. Use Rails, Django, or whatever real framework fits. WordPress was never the right tool for that either.

The last reason anyone had to ship a WordPress site for a small business was that there was nothing better. There is something better. It got here.

The playbook (no, really, you can do this)

Here is how the whole thing works. It is shorter than you think.

  1. Open Claude Design. Tell it what you want to build. Feed it your logo, photos, brand colors, whatever you have. Ask it for three or four design directions. Pick the one you like. Iterate with it directly until the site looks like the site you want.
  2. Hand the design to Claude Code. Start a new project. Tell it to build the site in Middleman. (Middleman is great. Use Middleman.) It will scaffold the project, generate the templates, and wire up the design.
  3. If you already have a WordPress site, point Claude Design at it as a starting reference. Say “make a new site that looks like this, but better.” That works embarrassingly well.
  4. Create a free Cloudflare Pages account. Connect it to the project. Push. Your site is live. Cost: $0.
  5. Want to write a blog post? Paste your draft into Claude Code and say “add this as a new post.” Done.

If you get stuck on the design step, hire someone for a few hours to help. That is not expensive. Everything else is genuinely doable on your own with a chatbot guiding you.

That is the whole job. There is no server to manage. There is no plugin to update. There is no monthly hosting bill. There is nothing to hack.

Someone with zero technical background just shipped one. So can your business.