Goodbye
WordPress.
I had two websites sitting on CMSes. One on WordPress, one on Craft. PHP stacks, plugin ecosystems, theme builders, security updates I'd been ignoring. The usual. I migrated both to straight HTML — redesigned, restructured, live on Cloudflare — in a couple hours. Total spend on themes: zero.
That was the moment I stopped thinking of WordPress as a tool and started thinking of it as a problem that no longer exists.
Why CMSes existed in the first place
WordPress wasn't built for developers. It was built for the gap — the space between "I need a website" and "I can write code." Themes, plugins, page builders, drag-and-drop editors: the entire ecosystem is infrastructure for people who couldn't close that gap themselves. It was a reasonable solution to a real problem.
The problem is gone. Natural language to code closes the gap faster, cheaper, and with less overhead than any CMS ever did. The middleware layer — WordPress, Squarespace, Wix, Webflow, Bluehost, pick your flavor — was always a workaround. It just didn't feel like one until the workaround became unnecessary.
What actually happened
I sat down with Claude Design and described what I wanted — brand, layout, feel. Not a brief. Not a spec. A conversation, the way you'd describe it to a designer over coffee. An hour later I had clickable, live HTML. Real screens, not wireframes. I iterated on the CSS. I iterated on the layout. Then I dropped it into Claude Code, pushed to GitHub, and Cloudflare deployed it.
Same session. No theme to purchase. No plugin conflicts. No PHP version to worry about. No hosting panel to navigate. The entire stack is HTML, CSS, JavaScript — the same things I was writing twenty-five years ago — sitting in a GitHub repo that auto-deploys on every push.
That's not a workaround. That's how websites were always supposed to work.
The stack that replaced everything
HTML → GitHub → Cloudflare is not a novel architecture. It's been available for years. What's changed is the cost of entry. Before, you needed to be comfortable writing and maintaining code to make it work. Most people aren't. That's why the CMS ecosystem exists — it abstracts the technical layer behind a UI anyone can use.
Except now the "UI anyone can use" is plain English. You don't need a theme builder when you can describe what you want and get clean code back in minutes. You don't need a plugin for contact forms or SEO meta tags when you can just write them. The abstraction layer shifted. WordPress was the abstraction. Now the abstraction is language — and it's better at the job.
Every tool built to bridge the gap between "I need this" and "I can build this" is now competing with plain English. Most of them will lose.
What you actually get back
Control is the obvious one. No opinionated theme fighting your design instincts. No mystery CSS you didn't write. No plugin that breaks on update. When something looks wrong, you open the file, find the line, change it. When you want a new section, you describe it and it appears. The site does exactly what you tell it to do because there's no intermediary translating your intent.
Speed is the less obvious one. I'd been putting off a full redesign of roccodigital.com for months because the thought of rebuilding from scratch felt like a project. It was an afternoon. That calculus changes what you're willing to try. When iteration is cheap, you iterate. When iteration is expensive, you defend what you have.
Cost is the one that sneaks up on you. WordPress is "free" until you add up the hosting bill, the premium theme, the plugins that need renewing, and the developer you call when you break something in PHP you don't fully understand. That last one is the expensive one — because it's unpredictable. A static HTML site on Cloudflare's free tier costs nothing to host. There's no theme to license. No plugins to renew. No PHP to break. The only thing you're paying for is the domain.
Security is the one nobody talks about enough. WordPress powers roughly 40% of the web and gets attacked accordingly. The plugin ecosystem is a permanent attack surface — every plugin is a dependency, and every dependency is a vector. A static HTML site on Cloudflare has no database, no PHP runtime, no admin panel to brute-force. There is nothing to exploit. That's not a minor benefit. That's a fundamentally different threat model.
Who this doesn't apply to
Large editorial teams with non-technical contributors who need to publish content daily — yes, a CMS still makes sense there. E-commerce at scale — Shopify isn't going anywhere. Anything where the content authors and the developers are different people operating on different cadences.
But for anyone running a business site, a portfolio, a blog, a marketing presence — anyone who's been paying for hosting and plugins and themes and fighting the update cycle — the case for a CMS is weaker than it's ever been. And it's getting weaker every month.
Rocco Digital runs on straight HTML. This post was built in the same stack. The irony of writing a "WordPress is dead" post on a site that used to run on WordPress is not lost on me.
It's the point.
— Chris
