EmDash CMS: CloudflareのWordPress後継をAstro 6.0で実現
あなたのCMSはCloudflareのエッジに8秒でデプロイされます。インストールしたプラグイン?それはサンドボックス化されたワーカー内で実行されます。データベースへのアクセスなし、外部への通信もできません。EmDashは2026年3月にCloudflareのオープンソースプロジェクトとしてWordPressの答えになるべく立ち上げられました。Astro 6.0とTypeScriptで完全に構築されています。テストサイトをデプロイし、ソースを監査し、実際のクライアントブログを移行した後、確認できます。これはスクリーンウェアではありません。EmDashはWordPressをクローンするのではなく、エッジコンピューティング、AIエージェント、サプライチェーン不安が要件を形作る場合、CMSが何をすべきかを再構想しています。アーキテクチャの選択は意見的で、パフォーマンスベンチマークは実質的で、トレードオフはマーケティングデッキが認めるより以上に重要です。
EmDashが実際に何なのか、どこが優れているのか、どこが不足しているのか、そしてそれが次のプロジェクトに属するかどうかを分析します。
目次
- EmDash CMSとは?
- 技術アーキテクチャ
- プラグインセキュリティ:実際のストーリー
- AI-ネイティブデザインとエージェントスキル
- デプロイオプションと価格設定
- WordPressからの移行
- EmDash vs WordPress vs ヘッドレスCMSオプション
- 今すぐEmDashを使うべき人
- これがヘッドレス開発に意味すること
- よくある質問
EmDash CMSとは?
EmDash(v0.1.0、現在開発者プレビュー中)はMITライセンスのCMSで、フルスタックサーバーレスJavaScriptアプリケーションとして動作します。これはWordPressのフォークではありません。リポジトリにはWordPressコードが一切ありません。代わりに、2006年ではなく2026年向けに設計された場合、CMSはどのようになるべきかをゼロから考え直したものです。
コアのアイデア:WordPressが正しく実装したこと(プラグインエコシステム、使い慣れた編集GUI、テーマ、簡単なコンテンツ管理)を取り、現代的なプリミティブで再構築します。つまり、エンドツーエンドのTypeScript、レンダリングレイヤーとしてのAstro 6.0、データ用のSQLite/D1、プラグイン実行用のサンドボックス化されたアイソレートです。
Matt Mullenweg本人が「非常にしっかりしたエンジニアリング」と呼びながら、GUIは「不気味の谷」的な品質を持つと指摘しました。彼は「精神的後継者」というフレーミングにも反論しました。これは公平です。EmDashはWordPressのエコシステム、コミュニティ、または20年の戦場で試された無数のプラグインを持っていません。しかしエンジニアリングの基盤は?それは本当に興味深いものです。
技術アーキテクチャ
詳細に掘り下げましょう。アーキテクチャの決定がEmDashの優先事項について多くを語っています。
コアスタック
EmDashはAstro 6.0の上に完全に構築されています。Cloudflareはこれを「コンテンツドリブンWebサイト向けの最速Webフレームワーク」と説明しています。Astroを使ったことがあれば、クライアントへの配信JavaScriptを少なくすることについて意見的なフレームワークだと知っています。部分的なハイドレーション、アイランドアーキテクチャ、優れた静的生成。すべてがコンテンツサイトを高速化します。
EmDashのテーマは標準的なAstroプロジェクトです。次を取得します:
- ページ(ホームページ、ブログ投稿テンプレート、アーカイブ)
- レイアウトと再利用可能なコンポーネント
- CSSまたはTailwindを使用したスタイル
- コンテンツタイプとフィールドを定義するJSONシードファイル
基本的なテーマ構造がどのように見えるかは以下の通りです:
my-emdash-theme/
├── src/
│ ├── pages/
│ │ ├── index.astro
│ │ ├── blog/
│ │ │ └── [slug].astro
│ ├── layouts/
│ │ └── BaseLayout.astro
│ ├── components/
│ │ ├── Header.astro
│ │ └── PostCard.astro
│ └── styles/
│ └── global.css
├── seed.json
└── astro.config.mjs
Astroサイトを以前に構築したことがあれば、これはすぐに馴染みがあります。それがポイントです。学習すべきEmDash固有のテンプレート言語はありません。それは単なるAstroです。
Social Animalでは多くのAstro開発を行っており、CMSがAstroをネイティブにレンダリングレイヤーとして採用しているのを見るのは刺激的です。これはすでに愛しているAstroのパフォーマンス特性がベイクインされていることを意味します。
データベースとストレージ
ローカルでは、EmDashはSQLiteを使用します。シンプル、高速、ゼロ設定です。本番ではCloudflareでD1(Cloudflareのサーバーレスなエッジで実行されるSQLite互換データベース)を使用します。
画像はローカルディスク、Cloudflare R2、またはAmazon S3に保存できます。すでにCloudflareエコシステムにいる場合、R2が自然な選択です。エグレス料金がゼロだからです。
これは賢いコンボです。開発向けのSQLiteは、Dockerコンテナを起動したり、ローカルPostgresインスタンスを管理する必要がないことを意味します。本番向けのD1は、データがユーザーの近くに住むことを意味し、接続プーリングの問題はありません。
// EmDashは型付けされた構造化APIを使用
// これは人間とAIエージェントの両方にとって簡単です
const posts = await emdash.content.list({
type: 'post',
status: 'published',
limit: 10,
orderBy: 'publishedAt',
order: 'desc'
});
プラグインセキュリティ:実際のストーリー
これはEmDashの最も強い売り文句であり、真摯な注目に値します。
プロジェクト全体を動機付けた統計:WordPressの脆弱性の96%はプラグインに由来します。WordPressコアからではなく。データベース、ファイルシステム、PHPランタイムへの完全で無制限のアクセスを持つプラグインから。単一の不適切にコード化されたコンタクトフォームプラグインが、サイト全体を公開することができます。
WordPressには任意の時点で800以上のセキュリティレビュー待ちのプラグインがあります。そのバックログは消えていきません。
EmDashがプラグインをサンドボックス化する方法
EmDashはCloudflareがDynamic Workersと呼ぶもの(最小権限の原則に従う隔離実行環境)でプラグインを実行します。プラグインは明示的にアクセス権を付与されたものにのみアクセスできます。
それはデスクトップでアプリを実行する(完全なシステムアクセス)とブラウザタブで実行する(サンドボックス化)の違いのようなものと考えてください。WordPressプラグインはデスクトップアプリです。EmDashプラグインはブラウザタブです。
// 明示的な権限を持つEmDashプラグイン宣言
export default definePlugin({
name: 'my-seo-plugin',
permissions: [
'content:read',
'content:meta:write',
// 注:database:writeなし、ファイルシステムアクセスなし
],
hooks: {
'content:beforePublish': async (ctx) => {
// プラグインはコンテンツを読んでメタフィールドを書くことができます
// しかし、テーブルを削除したり、他のプラグインのデータを読んだり、
// ファイルシステムにアクセスすることはできません
const meta = generateSeoMeta(ctx.content);
return { ...ctx, meta };
}
}
});
これは根本的に異なるセキュリティモデルです。プラグインに脆弱性があった場合でも、被害の範囲は含まれます。プラグインはサンドボックスが許可しないため、その権限をエスカレートすることはできません。
完璧ですか?いいえ。エコシステムは真新しいので、WordPressの60,000以上のプラグインをEmDashの...ほんの少数と交換しています。しかしアーキテクチャは健全で、WordPressサプライチェーン攻撃で燃え尽きた組織にとって、これは重要です。
AI-ネイティブデザインとエージェントスキル
EmDashは単なる人間の編集者向けに構築されたのではなく、AI エージェントが相互作用することを想定して、ゼロから設計されました。
ここで「AI-ネイティブ」が実際に意味すること
3つの具体的な機能:
- エージェントスキル:CMSオペレーション(コンテンツ作成、メディア管理、テーマ変更)を実行するようにAIアシスタントに許可するCLIツール。
- 組み込みMCPサーバー:EmDashはModel Context Protocolサーバーと一緒に出荷し、Claudeなどのツールが直接CMSに接続してその構造を理解できることを意味します。
- 型付けされた構造化API:すべてのコンテンツタイプには型付けされたスキーマがあります。これは単にTypeScript開発者にとって良いだけではありません。これはLLMが有効なコンテンツを生成するために正確に必要なものです。
「AI-ネイティブ」マーケティングに懐疑的でしたが、この実装は実用的な意味を成します。AIが最初のドラフトを生成するコンテンツオペレーションを実行している場合、その ワークフローをネイティブにサポートするCMSを持つことで、多くのグルーコードを構築する必要をなくします。
# AI エージェント機能を使用してEmDash CLIを使用
emdash agent generate-theme --prompt "dark modeを持つミニマリストブログ" \
--framework astro --style tailwind
# AIはまたMCPサーバーを通じてコンテンツを管理できます
emdash agent create-post --title "週間ラウンドアップ" \
--type draft --assign-to editor@example.com
Cloudflareはまた、EmDashをx402マネタイゼーション向けに配置しています。AIエージェントがコンテンツをクロールすることで、構造化アクセスのためにマイクロペイメントを支払うという考え。これは初期段階で推測的ですが、アーキテクチャハックはそこにあります。
デプロイオプションと価格設定
EmDash自体はMITライセンスの下で無料でオープンソースです。あなたの費用は純粋にホスティングです。
| プラットフォーム | 無料層 | 有料スケーリング | 最適な用途 |
|---|---|---|---|
| Cloudflare Workers | 1日100Kリクエスト、D1およびR2無料割り当て | 無料制限を超えた場合の従量課金 | 本番サイト、エッジパフォーマンス |
| Netlify | ホビー層で寛大なビルド制限 | 使用量ベースの課金 | Netlifyに既にいるチーム |
| Vercel | ホビー層利用可能 | 使用量ベースの課金 | Next.jsショップが実験している |
| セルフホスト(Node.js) | 無料(あなたのハードウェア) | インフラコストはさまざま | 完全なコントロール、既存のサーバー |
Cloudflareパスは明らかに黄金のパスです。Cloudflare Workers上のEmDashは、ゼロにスケールダウン(誰も訪問しない場合、何も支払わない)でき、1秒あたりの無制限のリクエストで数百万のインスタンスにスケールアップできます。コンテンツサイトの場合、その経済モデルは打ち負かすのが難しいです。
比較のために、管理されたWordPressホストは通常、基本的なサイトの場合は月額$5~50の費用がかかり、エンタープライズWordPressホストは月額$200~2,000に上昇します。Cloudflareの無料層でのEmDashは、低~中程度のトラフィックブログで文字通りゼロのコストを実行できました。
WordPressからの移行
Cloudflareは2つの移行パスを構築しました:
- WXRインポート:WordPressサイトをWXR(WordPress eXtended RSS)ファイルとしてエクスポートし、直接EmDashにインポートします。投稿、ページ、カテゴリ、タグ、メディア参照が付属しています。
- EmDashエクスポーター プラグイン:より詳細なエクスポートを処理するWordPressプラグインをインストールします。
どちらのパスも魔法ではありません。テーマを再構築し(WordPress PHPテーマはAstroコンポーネントに変換されないため)、プラグイン依存の機能を再構成し、徹底的にテストする必要があります。しかし、コンテンツ移行自体は簡単です。
# WordPressのWXRエクスポートをインポート
emdash import wordpress --file ./export.xml --media-dir ./uploads
# インポートされたコンテンツをプレビュー
emdash dev
中程度の複雑さのWordPressサイト(50~100投稿、カスタム投稿タイプ、数十ページ)からの移行は、経験豊富な開発者で2~4週間かかると推定します。主にテーマの再作成とプラグイン置換に費やされます。些細ではありませんが、成し遂げられないわけではありません。
EmDash vs WordPress vs ヘッドレスCMSオプション
これを、評価している可能性のある代替案の文脈に置きましょう。
| 機能 | EmDash | WordPress | Contentful | Strapi |
|---|---|---|---|---|
| ライセンス | MIT(無料) | GPLv2(無料) | 専有 | MIT(セルフホスト) |
| 言語 | TypeScript | PHP | N/A(SaaS) | JavaScript/TypeScript |
| プラグイン セキュリティ | サンドボックス化されたアイソレート | 共有ランタイム(保護されていない) | 管理API | サーバーレベル |
| AI統合 | ネイティブMCPサーバー、エージェントスキル | プラグイン依存 | APIベース | プラグイン依存 |
| エッジ デプロイ | ネイティブ(Cloudflare Workers) | CDN/プロキシが必須 | CDN支持API | セットアップが必須 |
| プラグイン エコシステム | 新興(ベータ) | 60,000以上のプラグイン | 300以上の統合 | 1,500以上のプラグイン |
| GUI使いやすさ | 機能的だが初期 | 成熟、よく知られている | 洗練 | 良好、改善中 |
| コンテンツ モデリング | JSONシードファイル、型付き | カスタム投稿タイプ、ACF | ビジュアルコンテンツモデル | コンテンツタイプビルダー |
| セルフホスティング | はい | はい | いいえ | はい |
| 価格設定 | $0(ホスティングコストのみ) | $0 +ホスティング(通常$5~50/月) | $0~489/月 | $0(セルフホスト)から$299+/月 |
ピクチャーは明確です。EmDashはセキュリティアーキテクチャ、エッジネイティブデプロイ、AI統合で勝ちます。WordPressはエコシステムの成熟度とユーザーフレンドリーさで圧倒的に勝ちます。Contentfulおよび Strapiなどのヘッドレスオプションは異なるニッチを占めます。それらはAPIファーストプラットフォームであり、組み込みのレンダリングレイヤーはありません。
ヘッドレスCMSソリューションを構築している場合、EmDashは興味深い中間地点を表しています。完全なレンダリングレイヤー(Astro)を持っていますが、その構造化APIはヘッドレスユースケースでも機能します。
今すぐEmDashを使うべき人
はっきり言いましょう:EmDashは開発者プレビューです。v0.1.0。荒い端を回避することに満足していない限り、本番クライアント作業には準備ができていません。
とはいえ、注目すべき人は次の通りです:
現在良い適合
- Astroを探索している開発者は、別のヘッドレスサービスに到達することなくCMSレイヤーが欲しい
- セキュリティに配慮した組織はWordPressプラグイン脆弱性に疲れている
- AI-forward チームはLLM生成コンテンツを含むコンテンツワークフローを構築している
- Cloudflare-native ショップはすでにWorkers、D1、R2、および広いCloudflareエコシステムに投資している
- 個人ブログと開発者ポートフォリオあなた自身がクライアントであり、ベータソフトウェアを許容することができる
まだ準備ができていない
- 締め切りのあるクライアント プロジェクト。エコシステムは予測可能なタイムラインには若すぎる
- 非技術的なコンテンツ編集者。セットアップにはGitHub、CLI、およびデータベース設定が必要です
- 特定のWordPressプラグインに依存しているサイト。EmDash等価物はありません(WooCommerce、Yoast等)
- 大規模な編集チーム。GUIはWordPressの編集経験と競争する前により多くの研磨が必要です
これがヘッドレス開発に意味すること
EmDashが重要だと思う理由は、単にそのエコシステムを超えています。それは数年間推進してきたアーキテクチャパターンを検証しています。
あなたのCMSが型付けされたAPIレイヤーであるべき、あなたのレンダリングが最新のフレームワークであるべき、あなたのデプロイメントがエッジネイティブであるべき、そしてあなたのプラグインがサンドボックス化されるべきという考え。これらは新しいアイデアではありません。しかし、Cloudflareがそれらを意見的でオープンソースのプロジェクトにパッケージ化することで、アプローチに信頼性と勢いを与えます。
Social Animalでは、同様のアーキテクチャで構築してきました。Astro、Next.js、およびヘッドレスCMSプラットフォームを使用して、高速で安全で保守可能なサイトを作成します。EmDashは、業界がこの方向に向かっていることを確認しています。
新しいプロジェクトのCMS戦略を評価している場合、AstroBuild、Next.jsアプリケーション、またはヘッドレスCMS実装であろうと、今日それを採用しなくても、EmDashがどこに適合するかを理解する価値があります。アーキテクチャパターン(サンドボックス化された拡張機能、型付きコンテンツAPI、エッジデプロイメント、AI-ネイティブデザイン)を推進するのは、今後数年間すべてのCMSに影響を与えるつもりです。
オプションについて話したいですか?お問い合わせいただくか、ヘッドレス開発プロジェクトの価格設定を確認してください。
よくある質問
EmDashは本当にWordPress代替ですか? 今日はそうではなく、おそらくほとんどの人が意味する方法ではありません。WordPressは約43%のすべてのWebサイトを動かしており、20年のエコシステムを持っています。EmDashはv0.1.0ベータです。それは根本的に異なるアーキテクチャアプローチを取るWordPress代替として最も良く理解されています。Cloudflareはそれを「精神的後継者」と呼びます。このフレーミングはより正確です。それはWordPressが正しく実装したもの、特にプラグインセキュリティに関する改善に触発されています。
EmDashはプラグイン セキュリティをWordPressと異なる方法でどのように処理しますか? WordPressプラグインは、データベースとファイルシステムへの完全なアクセスを与える、WordPressコアと同じPHPプロセスで実行されます。EmDashはサンドボックス化されたDynamic Workersでプラグインを実行します。各プラグインが明示的に宣言する権限のみを取得する隔離実行環境。これは、脆弱なプラグインが他のプラグインのデータにアクセスしたり、データベーステーブルをドロップしたり、任意のファイルを読むことができないことを意味します。ブラウザがタブを相互に分離するのと同じ原則です。
既存のWordPressサイトをEmDashに移行できますか? はい、注意事項があります。EmDashはWordPress WXRエクスポートファイルのインポートをサポートしており、投稿、ページ、カテゴリ、タグ、およびメディア参照を導入します。ただし、WordPressテーマは転送されません(Astroで再構築する必要があります)。WordPressプラグインによって提供される機能は複製する必要があります。コンテンツ移行は簡単です。その他すべてには開発作業が必要です。
EmDashの実行にはいくらかかりますか? EmDash自体はMITライセンスの下で無料でオープンソースです。ホスティングコストはプラットフォームに依存します。Cloudflare Workersでは、無料層は1日100,000リクエストを提供し、D1データベースとR2ストレージ割り当てを解放します。多くの小中規模のサイトを文字通りゼロコストで実行できるのに十分です。有料使用量は従量課金であり、通常はコンテンツサイトにとって非常に手頃です。
EmDashを使用するにはAstroを知る必要がありますか? テーマ開発とカスタマイズについては、はい。EmDashテーマは標準的なAstroプロジェクトであるため、Astroのコンポーネントモデル、ルーティング、およびビルドシステムに習熟する必要があります。任意の最新JavaScriptフレームワーク(React、Vue、Svelte)を使用している場合、Astroをピックアップするのは比較的迅速です。GUIを通じたコンテンツ編集の場合、Astro知識は必須ではありませんが、編集インターフェイスはベータではまだ粗いです。
EmDashのAI統合は実際に機能しますか? EmDashには組み込みMCP(モデルコンテキストプロトコル)サーバーが含まれており、ClaudeなどのAIツールが直接CMSに接続できます。また、エージェントスキルも提供しています。CLIツールはAIアシスタントがコンテンツを作成したり、メディアを管理したり、テーマを生成したりするために呼び出すことができます。すべてのコンテンツタイプは型付きスキーマで定義されるため、AIモデルはデータ構造を推測することなく信頼できる有効なコンテンツを生成できます。実用的で、派手ではありません。
Cloudflare以外のどこかにEmDashをデプロイできますか? はい。Cloudflare Workersが主要なデプロイターゲットですが、EmDashはNetlify、Vercel、またはNode.jsを使用する任意のサーバーでも実行されます。CloudflareをD1をエッジで特定の最適化を失い、スケールしてゼロにします。しかしコアCMSは正常に機能します。サンドボックス化されたプラグインシステムは、ただし、最もCloudflareのインフラストラクチャと密接に統合されています。
EmDashが成熟するまで待つべきか、今すぐ学び始めるべきか? あなたがコンテンツサイトを構築する開発者の場合、クライアントプロジェクトではなく、個人サイトまたは内部ツール向けに今すぐ学び始めてください。Astroスキルは関係なく転送され、EmDashのアーキテクチャを理解することで、より良いCMS決定を下すのに役立ちます。本番クライアント作業については、プラグインエコシステムが開発する時間があり、編集GUIが実世界のフィードバックを通じて改善されている、v0.5またはv1.0リリースまで待つことをお勧めします。