はじめに
EmDash CMS とは何か、どの技術スタックで構築されているか、そして公式 EmDash コンテンツサイトを今すぐ立ち上げる最適な方法を理解します。
EmDash CMS とは
EmDash CMS は、Astro 上に構築されたフルスタック TypeScript CMS として公開されており、特に Cloudflare 上で高い適性を持つよう設計されています。製品には、WordPress ですでに馴染みのある次の概念が引き継がれています。
- コレクションとコンテンツタイプ
- タクソノミー、メニュー、ウィジェット
- 編集者向けの管理インターフェース
- サイトの挙動を拡張するプラグインモデル
違いは、EmDash が PHP ホスティングではなく、モダンなフロントエンドツール、型付きコンテンツ、Cloudflare ネイティブなデプロイ手段を中心に設計されている点です。
一般的な CMS との違い
公式ドキュメントとリポジトリの公開情報を見ると、次の特徴が一貫しています。
- EmDash は Astro ネイティブ であり、API 越しに呼び出す別個の SaaS ではない
- スタック全体で TypeScript を使用する
- クラウド移植性 を前提に設計されている
- プラグインモデルは Cloudflare Worker Isolates 上のサンドボックス実行 を中心にしている
- WordPress 風の HTML 一括保存に依存せず、構造化コンテンツ を採用している
この組み合わせこそが、emdashcmseverything.com のような公開エコシステムサイトにとって魅力となる理由です。
このサイトで推奨される最初の構成
EmDash 自体はランタイム型 CMS アーキテクチャをサポートしていますが、このサイトの初期版として最適なのは、依然として静的な Astro コンテンツサイトです。
このプロジェクトで推奨されるスタックは次のとおりです。
- サイトフレームワークとしての
Astro - 長文コンテンツと資料ページのための
MDX - 低コストホスティングとしての
Cloudflare Pages - 継続的な公開運用のための
Git + AI 編集
この開始点が適しているのは、サイトの中心が次の用途だからです。
- ドキュメント
- FAQ と移行ガイド
- プラグインおよびテンプレートのディレクトリ情報
- アップデート、チュートリアル、製品解説
これらの要件は、初日からデータベース連携の編集機能を必要としません。
なぜ最初からフルランタイムを導入しないのか
EmDash は D1 と R2 を組み合わせた Cloudflare Workers 上で動作でき、これは製品の重要な価値です。ただしこのサイトでは、最初からフルランタイムで始めると、得られる効果に対してインフラコストとセットアップ複雑性が先に増えてしまいます。
Static-first で始めると、次の利点があります。
- Cloudflare Pages への高速デプロイ
- Git レビューの簡素化と AI との協業のしやすさ
- ローンチ時に管理認証やストレージ設定が不要
- メッセージ設計と情報設計を段階的に改善しやすい
その後、ブラウザベースの編集ワークフロー、認証付き投稿、より高度なメディア管理が必要になった時点で、必要な領域だけをフル EmDash ランタイムへ移行できます。
ローカル開発
現在のプロジェクトは、意図的に次の構成になっています。
src/にはルート、レイアウト、再利用可能コンポーネントを配置docs/には公開対象の MDX コンテンツを配置
これにより、コンテンツ作業とフロントエンド作業を明確に分離できます。
ローカル実行は次のコマンドです。
npm install
npm run dev
静的サイトのビルドは次のとおりです。
npm run build
Cloudflare Pages へのデプロイ
現在の静的サイトでは、Cloudflare Pages の設定を次のようにします。
- ビルドコマンド:
npm run build - 出力ディレクトリ:
dist
これで運用負荷を最小限に抑えた公開サイトを実現できます。
Workers・D1・R2 へ移行するタイミング
公式資料から、次のような「本格的な CMS 挙動」が必要な場合にランタイム構成の価値が最も高いことが分かります。
- リビルド不要のライブ更新
- データベース連携のコレクション
- ブラウザ上での管理編集
- パスキーまたは Cloudflare Access 認証
- R2 によるメディア保存
- Workers 上でのサンドボックスプラグイン実行
そのタイミングで、Pages のみの配信からフル EmDash プラットフォームへ移行するのが適切です。
推奨される次のステップ
公式 EmDash エコシステムサイトを立ち上げる場合、実務的な順序は次のとおりです。
- Astro と Cloudflare Pages で公開サイトを先に公開する
- ドキュメント、FAQ、移行ガイド、プラグインページ、テンプレートページを拡充する
- サイト運用を通じて、ポジショニングと公開フローを検証する
- 編集体制やエコシステム運用で本当に必要になった段階で、フル EmDash ランタイム機能を導入する