なぜ EmDash か

このページ

EmDash は Astro ネイティブの CMS で、従来型 CMS のパターンと現代的な Web 開発を組み合わせます。コンテンツ編集 UI、Astro フレームワークとの統合、柔軟なデプロイオプションを備えています。

EmDash の違い

Astro ネイティブの設計

EmDash は汎用 CMS を流用したのではなく、Astro 向けに構築されています。コンテンツはサイトと同じデプロイに置かれ、Astro の Live Content Collections 経由で問い合わせます。別サービスや API の往復、Webhook 同期は不要です。

馴染みのあるコンテンツモデル

WordPress を使ったことがあれば、EmDash の概念は馴染み深いでしょう。コレクション(投稿タイプに相当)、タクソノミー、メニュー、ウィジェット領域、メディアライブラリ。考え方は引き継がれ、実装はモダンなツールチェーンです。

フレームワーク統合

EmDash は Astro のために設計されています。密な統合により、型安全なクエリ、コンポーネント単位のキャッシュ、統合プレビューが可能です。

主な機能

単一デプロイ

コンテンツとフロントエンドを一緒にデプロイ。1 つのコードベース、1 つのデプロイ、1 つの管理対象。

型安全

スキーマはデータベースに。TypeScript 型は DB からテンプレートまで、オートコンプリート込みで流れる。

ライブ更新

Astro の Live Content Collections 上に構築。再ビルドなしでコンテンツ変更が即反映。

クラウドポータブル

Cloudflare Workers と D1・R2 で動作し、Node.js、SQLite、S3 互換ストレージでも利用可能。

比較

CMS のアプローチは用途によって異なります。

観点従来型 CMSヘッドレス CMSEmDash
アーキテクチャモノリシック分離Astro と統合
コンテンツ編集組み込み管理組み込み管理組み込み管理
フロントエンドテーマ・テンプレート持ち込みAstro コンポーネント
デプロイ単一サーバーCMS + フロント単一デプロイ
型安全ランタイムAPI 型フル TypeScript
コンテンツ更新即時Webhook / 再ビルド即時(SSR)
プラグインモデル同一プロセスAPI 拡張フック付きサンドボックス

Cloudflare へのデプロイ

EmDash は SQLite と S3 互換ストレージがあればどのプラットフォームでも動きます。Cloudflare 固有の機能もサポートします。

  • D1 — エッジの SQLite と自動レプリケーション
  • R2 — エグレス料なしの S3 互換ストレージ
  • Workers — グローバル展開と高速コールドスタート

プラグイン移行

EmDash は WordPress プラグイン機能の移行を支援するツールを提供します。

  • 概念マッピング — WordPress のフック・フィルター・API を EmDash 相当に対応付け
  • 移行ガイド — 特定パターンの移植手順
  • AI 支援ポート — WordPress コードから EmDash プラグインを生成しやすいドキュメント構造

複雑なプラグインは依然として人間のレビューが必要ですが、簡単なものではガイドが工数を削ります。

向いているケース

EmDash が向くケース:

  • CMS が必要な新規 Astro プロジェクト
  • モダンなツールチェーンを望む WordPress 移行
  • 編集者がコードに触れないべきサイト
  • Cloudflare へのデプロイ
  • 型安全性と開発者体験が重要なサイト

向かない可能性があるケース:

  • Astro 以外のプロジェクト(強く Astro に結合)
  • 大規模 EC(WooCommerce 相当は未整備)
  • 満足している既存ヘッドレス構成
  • WordPress 固有プラグインエコシステムが必須

はじめる