markstageType it. Ship it.

EmDash vs Markstage: which fits your Astro site?

EmDash keeps Astro content in a SQL database; Markstage keeps it as Markdown and JSON in git and edits on the real page. Facts checked 3 Nov 2026.

Facts about EmDash checked on , from its own website. Markstage is not affiliated with it.

From the full comparison; each number links to its source.

EmDash and Markstage are both built for Astro and both free to self-host, but they store content in opposite ways. EmDash is a full-stack CMS inside your Astro site, with content in a SQL database, in the spirit of WordPress. Markstage keeps every page and post as a file in git.

Who each one is for

EmDash suits sites that want a WordPress-like CMS in Astro: content types made in an admin screen, a plugin system with sandboxed plugins, and content queried live, on Cloudflare or Node with SQLite.

Markstage suits sites that want content as Markdown and JSON in git, every save as a reviewable commit, writers on the real design, and a static live site. Markstage is pre-release.

Side by side

MarkstageEmDash
Where content livesMarkdown and JSON in gitA SQL database (SQLite, D1, Turso, PostgreSQL)
Content formatMarkdown and JSON filesPortable Text (structured JSON) in the database
Content typesDefined in markstage.config and your filesDefined in the database through the admin
EditingOn the real pageAn admin panel; its README also lists inline visual editing
Live siteStays static; Markstage runs beside itThe Astro site runs as a server (Workers or Node)
RolesFive built in, plus custom rolesAdministrator, Editor, Author, Contributor
Sign-inPassword, two-step, OpenID ConnectPasskeys first, with OAuth and magic links; no single sign-on listed
PluginsBlock packs and site configSandboxed plugins with capability manifests
AI agentsMCP serverMCP server and agent skills
WordPress importReusable blocks and old contact messages; posts through the JSON importAn import wizard
LicenceElastic License 2.0 (source-available)MIT

Where EmDash is stronger

Which one to pick

Pick EmDash if you want a database-backed CMS with plugins and content types that editors create. Pick Markstage if you want your content in git as plain files, every change reviewable as a diff, a static live site, and editing on the real design.

Frequently asked questions

Is EmDash free?

Its repository is under the MIT licence, and its docs describe running it yourself on Cloudflare or Node.

Does EmDash keep content in git?

No. Its README says content types and content are stored in a SQL database.

Does Markstage need a database?

Not for content: the content itself is files in git. One SQLite file on the server holds people, sessions, the inbox, drafts in progress, trash, releases, the media index and the audit log.

Sources

Checked on 2026-11-03: EmDash on GitHub · EmDash docs · Astro: EmDash guide. Markstage facts: the full comparison.

Get Markstage on GitHubAll comparisonsRead the docs

More comparisons