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를 매력적으로 만듭니다.
이 사이트의 권장 1차 버전
EmDash 자체는 런타임 CMS 아키텍처를 지원하지만, 이 사이트의 첫 버전으로는 정적 Astro 콘텐츠 사이트가 가장 적합합니다.
이 프로젝트의 권장 스택은 다음과 같습니다.
- 사이트 프레임워크로
Astro - 장문 콘텐츠와 리소스 페이지를 위한
MDX - 저비용 호스팅을 위한
Cloudflare Pages - 지속적인 발행 운영을 위한
Git + AI 편집
이 출발점이 적절한 이유는 사이트의 핵심 목적이 다음이기 때문입니다.
- 문서
- FAQ 및 마이그레이션 가이드
- 플러그인/템플릿 디렉터리 콘텐츠
- 업데이트, 튜토리얼, 제품 교육 콘텐츠
이런 요구사항은 첫날부터 데이터베이스 기반 편집을 필요로 하지 않습니다.
왜 처음부터 전체 EmDash 런타임을 배포하지 않는가
EmDash는 D1, R2와 함께 Cloudflare Workers에서 실행할 수 있으며 이는 중요한 제품 스토리입니다. 하지만 이 사이트에서 처음부터 전체 런타임으로 시작하면 실질적인 이점을 얻기 전에 인프라 비용과 설정 복잡도만 커질 수 있습니다.
정적 우선 방식의 장점은 다음과 같습니다.
- 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-only 전달 방식에서 전체 EmDash 플랫폼으로 확장할 적절한 시점입니다.
권장 다음 단계
공식 EmDash 생태계 사이트를 시작한다면 실무 순서는 다음과 같습니다.
- Astro + Cloudflare Pages로 공개 사이트 배포
- 문서, FAQ, 마이그레이션 가이드, 플러그인/템플릿 페이지 확장
- 사이트를 통해 포지셔닝과 발행 워크플로 검증
- 편집/생태계 워크플로가 실제로 필요로 할 때만 전체 EmDash 런타임 기능 도입