← All articles

Why I left WordPress for TypeScript, Bun, Svelte and Docker

4 min read

I started my career as a PHP and WordPress developer. For years it was a reasonable choice: WordPress gets a site online quickly and almost every client knows it. The problem was never building the site. The problem was everything that came after.

The cost of keeping it alive

A WordPress site is never finished. Core, themes and plugins need constant updates, and a site that is online is a site that gets attacked. Each update is a small gamble: more than once something broke after an update, and fixing it meant stopping what I was doing to repair something that had worked the day before.

That maintenance is invisible when you quote a project, but over the years it takes more time than the original build.

What I use now

I moved to a smaller set of tools that I understand end to end:

What changed in practice

The main change is that I decide when something changes. Dependencies are pinned and I update them on purpose, with types telling me what broke. There is no public admin panel to attack and no plugin ecosystem that I do not control.

I do not think WordPress is a bad tool. It is a good fit for many sites. For products that I build and run myself, a typed stack on my own servers means less time spent on maintenance and more time spent on the product.