快速開始
了解 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 生態網站,實務上建議順序如下:
- 先以 Astro 與 Cloudflare Pages 發布公開網站
- 補齊文件、FAQ、遷移指南、外掛頁與模板頁
- 透過站點運行驗證定位與發布流程
- 僅在編輯或生態流程確實需要時,才導入完整 EmDash 執行期功能