EmDash CMS by Cloudflare
Artikel

EmDash: WordPress voorbij?

We bouwden er een site mee. Dit is ons oordeel.

43% van het internet draait op WordPress. Dat is geen compliment.

Het betekent dat bijna de helft van alle websites gebouwd is op een architectuur uit 2003.

WordPress is een monolithische PHP-applicatie die je zelf moet hosten, patchen, beveiligen en regelmatig van de intensive care moet halen na een plugin-update die de boel heeft opgeblazen.

Cloudflare weet dat. En ze hebben er iets aan gedaan. Op 1 april 2026 lanceerden ze EmDash: een volledig open-source CMS gebouwd op Astro en hun eigen edge-infrastructuur. Geen PHP, geen MySQL-dump die je om 3 uur 's nachts moet restoren. In plaats daarvan: TypeScript, SQLite, en een contentmodel dat je definieert als code.

// WAAROM_RELEVANT

Waarom dit relevant is, ook als je geen developer bent

Als je verantwoordelijk bent voor een website, of je dat nu zelf bouwt of laat bouwen, zit je met WordPress in een merkwaardig dilemma. Het ecosysteem is enorm, de community is groot, er zijn 60.000 plugins. Maar juist dat ecosysteem is het probleem.

Elke plugin draait met dezelfde rechten als je hele site. Eén kwetsbaar contactformulier en je server staat open. De oplossing? Managed hosting voor €30-300 per maand. Of eindeloos updaten en hopen dat het goed gaat.

EmDash pakt dit fundamenteel anders aan.

Plugins draaien in sandboxes: geïsoleerde Workers met een capability manifest. Een plugin die beeldbewerking doet, kan niet bij je database. Een formulier-plugin kan geen bestanden wegschrijven. Dat is niet een feature; dat is het designprincipe.

// TECH_STACK

Wat het is, technisch

EmDash is gebouwd als Astro-integratie. Je site is een Astro-project, en EmDash voegt daar het CMS aan toe: een database (SQLite lokaal, Cloudflare D1 in productie), mediaopslag (filesystem lokaal, R2 in productie), en een volledige admin-interface met formulieren, mediabeheer, menumanagement en SEO-tooling.

Schema als code

Je definieert je hele site in één JSON-bestand. Schema, content, taxonomieën, menu's. Alles in een seed.json. Eén commando en je hebt een werkende site met admin.

Portable Text

Content als gestructureerde JSON in plaats van HTML-blobs. Dezelfde content kan een website vullen, een app, een e-mailtemplate, of een API-response. Probeer dat eens met WordPress the_content().

Sandboxed plugins

Plugins draaien in geïsoleerde Workers. Een plugin declareert wat hij nodig heeft (read:content, email:send) en kan niets anders. 96% van WP-kwetsbaarheden komt uit plugins.

Edge-first

Geen caching-lagen nodig. Content wordt direct vanaf Cloudflare's edge geserveerd met lage latency wereldwijd. Core Web Vitals out of the box.

En het is AI-ready: elke EmDash-instantie heeft een ingebouwde MCP-server waarmee AI-agents je content kunnen lezen en bewerken.

// DEMO: SETUP

Eerste login: passkey aanmaken en de admin verkennen.

// ONZE_ERVARING

Onze ervaring: AIDevTools.app

We hebben EmDash getest door een marketingsite te bouwen voor AIDevTools.app, een platform waarmee developers AI coding tools vergelijken. Drie pagina's, tien content types, 66 bewerkbare entries, complete admin-interface.

Wat we gebouwd hebben

3
pagina's
10
content types
66
bewerkbare entries

De belangrijkste les: EmDash denkt in collections, niet in vrije contentblokken. Waar WordPress alles in één teksteditor gooit, dwingt EmDash je om vooraf na te denken over je contentstructuur. FAQ-items zijn een collection. Features zijn een collection. Statistieken zijn een collection. Elk met hun eigen velden, validatie en sortering.

Dat voelt in het begin als extra werk. Maar het resultaat is dat alles bewerkbaar is in de admin. Geen Gutenberg-blokken die je voor de vorm kunt verschuiven maar eigenlijk toch niet begrijpt, maar echte formuliervelden met labels en validatie. Een marketeer kan de FAQ updaten zonder een developer te bellen.

// DEMO: ADMIN IN ACTIE

Content bewerken in de EmDash admin: klik, wijzig, klaar.

// CLOUDFLARE_LOCKIN

De olifant in de kamer: Cloudflare lock-in

Laten we het er meteen over hebben. EmDash is open-source (MIT-licentie), maar het is gebouwd door Cloudflare, voor Cloudflare. De productie-stack draait op Workers, D1, R2 en KV. Dat is Cloudflare vier keer.

EmDash

Lock-in op infraniveau. Je code en content zijn van jou. Draait lokaal op Node.js met SQLite. Deploybaar op Netlify, Vercel, Railway, een VPS.

WordPress

Lock-in op applicatieniveau. Vast aan PHP, MySQL, een hosting-stack die je liever niet zelf beheert, en een plugin-ecosysteem dat je site kan breken.

Sommige enterprise-features zitten achter een abonnement en de plugin-marketplace draait op Cloudflare-infra. Maar de kern is open-source en draait lokaal. Het verschil met WordPress: bij EmDash is de lock-in tenminste op infraniveau, niet op applicatieniveau.

// KANTTEKENINGEN

Wat het nog niet is

EmDash is versie 0.1.0. Dat moet je weten.

Documentatie is dun.

Je moet bereid zijn om source code te lezen. Veel ontdek je pas als je al halfweg bent.

Geen image field type.

Je slaat afbeeldingspaden op als strings. Werkbaar, maar niet elegant.

Passkey-first setup.

Modern, maar kan niet-technische gebruikers verwarren.

Kleine community.

Je bent een early adopter, met alles wat daarbij hoort. Geen plugin marketplace, geen community-plugins.

Daar staat tegenover: het is Cloudflare. Niet een solo-developer met een side project, maar een beursgenoteerd bedrijf dat jaarlijks $1.5 miljard aan infrastructuur investeert. De kans dat dit project over vijf jaar nog bestaat is aanzienlijk groter dan bij de gemiddelde headless CMS-startup.

// VOOR_WIE

Voor wie is dit?

Web developers

Die genoeg hebben van WordPress-maintenance en op zoek zijn naar een modern, TypeScript-first CMS met een developer experience die aansluit bij hoe je in 2026 websites bouwt.

Digitale strategen

Die een CMS zoeken dat content als gestructureerde data behandelt, met een duidelijk rechtenmodel, versiebeheer en API-first architectuur.

Corporate teams

Die de veiligheidsrisico's van WordPress willen vermijden zonder over te stappen naar een proprietary headless CMS met enterprise-prijzen en vendor lock-in.

// ONS_OORDEEL

Ons oordeel

EmDash is het eerste CMS in jaren dat ons enthousiast maakt. Niet omdat het alles kan wat WordPress kan. Dat kan het niet, nog lang niet. Maar omdat het laat zien hoe een CMS eruit zou moeten zien als je het vandaag opnieuw zou ontwerpen, zonder de bagage van twintig jaar backwards compatibility.

Schema als code. Sandboxed plugins. Edge-first. AI-ready. En een contentmodel dat eindelijk content en presentatie scheidt op een manier die in de praktijk werkt.

We gaan ermee aan de slag voor klantprojecten. Niet voor alles. Voor een webshop met WooCommerce-achtige functionaliteit is het te vroeg. Maar voor marketing sites, corporate sites en content platforms? EmDash is nu al een serieus alternatief.

// STACK

Stack & referenties

Voor de professionals die het naadje van de kous willen weten:

Technologie

Astro 6, TypeScript, SQLite/D1, R2, Cloudflare Workers, Portable Text, Node.js standalone adapter voor non-Cloudflare hosting.

Onze testcase

AIDevTools.app marketing site -3 pagina's, 10 collections, 66 content entries, 9 Astro-componenten, 2 taxonomieën. Seed-bestand van ~400 regels JSON definieert het complete schema + content.

Architectuurles

Gebruik collections met typed fields, niet custom Portable Text blocks. De admin-UI rendert custom PT-blocks niet. Je ziet een opaque blok in plaats van een formulier.

Deploy-opties

Cloudflare Pages + Workers (native), Netlify (Node adapter), Vercel (Node adapter), Docker/VPS (standalone Node).

// CONTACT

Overweeg je een CMS-migratie?

We denken graag mee over de juiste aanpak, of dat nu EmDash, een headless CMS, of een andere richting is.

// MEER_LEZEN

Gerelateerd