FAQ
Common questions about EmDash CMS, this website’s architecture, deployment choices, and the migration path from WordPress.
What is EmDash CMS in one sentence?
EmDash CMS is a full-stack TypeScript CMS built around Astro, with a modern content model, an admin interface, and a plugin architecture designed for safer execution on Cloudflare.
Is EmDash a headless CMS?
Not in the usual sense. Public EmDash documentation positions it as an Astro-native CMS rather than a separate content service that you query from any frontend.
That matters because the product is designed to live inside the site architecture, not outside of it.
Is EmDash only for Cloudflare?
No. Official materials present Cloudflare as the best-fit runtime for the full platform, especially for sandboxed plugins, D1, and R2. But EmDash is also described as portable across Node.js and SQLite-compatible or S3-compatible setups.
So the short version is:
- Cloudflare is the strongest production story
- Cloudflare is not the only possible environment
Why does this website start as a static Astro site instead of full EmDash runtime?
Because this site is primarily a public content surface:
- docs
- plugin pages
- template pages
- FAQ
- migration content
- updates
Those are all excellent fits for static delivery on Cloudflare Pages. Starting there reduces complexity and cost without blocking future migration to the full runtime.
Why not build the official site directly on WordPress?
Because the site should embody the product direction it is promoting.
The current site structure reflects that direction:
- file-based content
- modern frontend tooling
- clear Git-driven publishing
- good compatibility with AI-assisted editing
Using WordPress to market a WordPress successor would also make the architecture story much weaker.
Does EmDash support migration from WordPress?
Yes. Official documentation describes three import approaches:
- WXR file upload
- WordPress.com import
- REST API probing
It also describes migration support for posts, pages, media, taxonomies, status mapping, and Gutenberg-to-Portable-Text conversion.
Does EmDash have authentication built in?
Yes. Official docs describe EmDash as passkey-first, with WebAuthn as the primary model. They also describe magic-link fallback, optional OAuth, and the ability to use Cloudflare Access for Cloudflare deployments.
Can plugin and template pages still feel like real product pages on this static site?
Yes. In this project, each plugin or template entry can include:
- screenshots
- version
- price
- status
- release date
- download link
- GitHub link
- demo link
- changelog
That is enough to create a convincing marketplace-style public layer without requiring a backend.
When should this site move to the full EmDash runtime?
Move when static delivery stops being enough, for example if you need:
- browser-based editing for non-technical users
- authenticated submission workflows
- runtime-managed media and uploads
- complex editorial permissions
- ecosystem operations that need admin interfaces instead of Git
Until then, static delivery remains the lower-maintenance choice.
Does the full EmDash runtime require paid Cloudflare features?
The official GitHub README notes that sandboxed plugins depend on Dynamic Workers, and that feature currently requires a paid Cloudflare account. It also notes that you can disable the worker loader configuration if you want to run without sandboxed plugins.
That is another reason the current public site starts on Cloudflare Pages first.
Can AI help maintain this site?
Yes, and that is one of the strongest reasons to keep the public site content-first.
AI performs better when it can work on:
- discrete MDX files
- explicit frontmatter
- stable route structures
- reviewable diffs
This project is set up to take advantage of exactly that.