快速開始

了解 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 執行期

EmDash 可以運行在 Cloudflare Workers 搭配 D1 與 R2,這也是產品敘事的重要部分。但就這個網站而言,若一開始就上完整執行期,往往會在效益尚未顯現前先提高基礎設施成本與設定複雜度。

先採用 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 行為時,執行期堆疊最有價值,特別是:

  • 不需重建即可即時更新內容
  • 資料庫驅動的集合
  • 瀏覽器中的管理後台編輯
  • Passkey 或 Cloudflare Access 驗證
  • 使用 R2 儲存媒體
  • 在 Workers 上執行沙箱外掛

這就是從僅 Pages 交付升級到完整 EmDash 平台的正確時機。

建議的下一步

若你正在上線官方 EmDash 生態網站,實務上建議順序如下:

  1. 先以 Astro 與 Cloudflare Pages 發布公開網站
  2. 補齊文件、FAQ、遷移指南、外掛頁與模板頁
  3. 透過站點運行驗證定位與發布流程
  4. 僅在編輯或生態流程確實需要時,才導入完整 EmDash 執行期功能