Modern Emdash Cms
БесплатноНе проверенPersonal portfolio on EmDash CMS — Astro SSR on Cloudflare Workers, bilingual Arabic/English i18n, MCP server, sandboxed plugins, and integrated task tracker.
Описание
Personal portfolio on EmDash CMS — Astro SSR on Cloudflare Workers, bilingual Arabic/English i18n, MCP server, sandboxed plugins, and integrated task tracker.
README
Personal portfolio built with Astro and EmDash CMS, deployed as a Cloudflare Worker. Bilingual Arabic/English, with a built-in MCP server for AI agent access to content.
Stack
| Layer | Technology |
|---|---|
| Framework | Astro SSR |
| CMS | EmDash (Cloudflare variant) |
| Runtime | Cloudflare Workers |
| Database | Cloudflare D1 |
| Media | Cloudflare R2 |
| Sessions | Cloudflare KV |
| Plugins | Worker Loaders (sandboxed, paid plan) |
| Cloudflare Email Routing | |
| UI | React + Vanilla CSS |
Features
- Bilingual i18n — Arabic (default, RTL) and English (LTR). Default locale served at
/, English at/en/... - EmDash CMS — All content lives in D1, managed via EmDash. Pages fetch at request time via
getEmDashCollection()/getEmDashEntry() - MCP server —
/mcpendpoint exposes 46 tools (36 EmDash content tools + 10 custom tools). Auth via?token=orAuthorization: Bearer - Sandboxed plugins — Marketplace plugins run in isolated Workers via the
LOADERbinding (paid plan) - RSS Aggregator — Local native plugin (
src/plugins/rss-aggregator/) that imports feeds into EmDash content, with AI summarization/rewriting/translation, image import to R2, custom field mapping, manual curation, and full-text RSS. See docs/plugins/rss-aggregator.md - Editorial design — Oxblood
#6b1438accent, bone#f8f5efbackground, Playfair Display + Amiri + Thmanyah typefaces
Branches
| Branch | Plan | Notes |
|---|---|---|
main |
Paid | worker_loaders enabled, Cloudflare Email Routing |
free-emdash |
Free | No worker_loaders in production, Resend email |
Local Development
pnpm install
# Create .dev.vars
echo 'EMDASH_TOKEN=your-token' > .dev.vars
# First-time DB setup
pnpm bootstrap # Not recommended
# Start dev server
pnpm dev # http://localhost:4321
Commands
pnpm dev # Dev server (Miniflare)
pnpm build # Production build
pnpm run deploy # Build + deploy to Cloudflare Workers
pnpm typecheck # Astro type check
pnpm bootstrap # Init EmDash DB schema + seed
Project Structure
src/
├── components/ # Astro + React components
├── pages/ # File-based routing
│ └── [locale]/ # Locale-prefixed routes
├── i18n/ # ar.json + en.json translation strings
├── layouts/ # Base.astro (root layout, fonts, nav)
├── mcp/ # MCP proxy (index.ts)
├── plugins/ # EmDash plugin entrypoints
├── live.config.ts # EmDash collection schema
└── worker.ts # Cloudflare Worker entry + PluginBridge
wrangler.jsonc # Dev config (includes worker_loaders)
wrangler.prod.jsonc # Production deploy config
MCP Server
# List available tools
curl -H "Authorization: Bearer $EMDASH_TOKEN" https://<Your-Domain>.com/mcp
The /mcp endpoint merges EmDash's built-in content tools with custom tools and forwards requests to the appropriate handler via env.SELF service binding.
Environment Variables
| Variable | Required | Description |
|---|---|---|
EMDASH_TOKEN |
Yes | Bearer token for MCP auth |
EMDASH_URL |
No | Override base URL (defaults to https://Your-Domain.com) |
JOBS_API_URL |
No | External jobs Worker API base URL |
Deployment
pnpm run deploy
# Runs: pnpm exec wrangler deploy --config wrangler.prod.jsonc
Cloudflare Workers Builds dashboard deploy commands must include --config wrangler.prod.jsonc — omitting it causes the build to use wrangler.jsonc (which has worker_loaders) and fail with error 10195 on the free plan.
Установка Modern Emdash Cms
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/EngDawood/modern-emdash-cmsFAQ
Modern Emdash Cms MCP бесплатный?
Да, Modern Emdash Cms MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Modern Emdash Cms?
Нет, Modern Emdash Cms работает без API-ключей и переменных окружения.
Modern Emdash Cms — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Modern Emdash Cms в Claude Desktop, Claude Code или Cursor?
Открой Modern Emdash Cms на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Compare Modern Emdash Cms with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории productivity




