Cloudsteading

Self-hosted CMS and blogs on Cloudflare D1

5 open-source CMS and blog projects on Cloudsteading keep their content in Cloudflare D1: Qingyu Blog, vibecms and SonicJS. D1 is SQLite, so posts, pages and settings sit in one database beside the Worker that serves them, with media in R2. None run WordPress itself, so plugins and themes do not carry over.

All WordPress alternatives·Everything built with D1

How each one is built

Every project uses D1 and is mapped to WordPress. The rest of its Cloudflare setup, and its license, decide how much work it is to run.

Projects using D1, with license, Cloudflare primitives and what each replaces
ProjectLicenseCloudflareReplaces
Qingyu BlogMITD1, KV, PagesGhost, WordPress
vibecmsAGPL-3.0D1, Images, R2, WorkersGhost, WordPress
SonicJSMITD1, KV, R2, WorkersGhost, WordPress
microfeedAGPL-3.0D1, Queues, R2, WorkersGhost, WordPress
MonolithMITAnalytics Engine, D1, Pages, R2, WorkersGhost, WordPress

Frequently asked

Can WordPress run on Cloudflare Workers?+

Not as it is. WordPress needs PHP and MySQL, and Workers run JavaScript and WebAssembly. These projects replace WordPress with their own editor and content model, so moving a site means exporting the posts and rebuilding the theme.

Is D1 big enough for a blog or CMS?+

For text, comfortably. A D1 database holds up to 10 GB on the Workers Paid plan and 500 MB on Free, which is a great many posts. Images and uploads belong in R2, which these projects use for media.

What else do these projects use besides D1?+

Counting the 5 projects listed here: R2 (4), Workers (4), KV (2), Pages (2), Analytics Engine (1), Images (1). Each repository's Wrangler config shows exactly which bindings it needs.

5 WordPress alternatives using D1

Qingyu Blog

vibecms

SonicJS

microfeed

Monolith

Analytics Engine