mx-space/core
AI-powered CMS core for personal blogs and creator websites, with AI summaries, translation, moderation, and writing workflows.
mx-space/core – 带 AI 增强的个人 CMS 堆栈
是什么 – 一个用于构建完整、无头内容管理系统(CMS)的单体仓库,专为个人博客和创作者网站设计。该堆栈是 AI 增强型(例如,使用 AI 合约生成内容),由以下组件构成:
| 组件 | 技术栈 | 作用 |
|---|---|---|
核心服务器 (apps/core) |
NestJS + Fastify, PostgreSQL, Redis | 处理 API、存储、AI 相关端点和认证。 |
管理仪表盘 (apps/admin) |
React 19 SPA | 供所有者编辑内容、配置站点并查看遥测数据的 Web UI。 |
iOS 客户端 (apps/ios) |
UIKit + SwiftUI (XcodeGen) | 通过生成的 OpenAPI 客户端与服务器通信的原生管理应用。 |
推送中继 (apps/push-relay-rs) |
Rust | 独立的、保护隐私的 APNs 推送通知中继。 |
遥测 (apps/telemetry) |
Cloudflare Workers + D1 | 匿名使用数据收集器。 |
共享 SDK (packages/*) |
TypeScript / Rust | 类型安全的 API 客户端、CLI(mxs)、数据库模式、Lexical 编辑器合约、AI 事件合约、推送协议、Webhook 辅助工具、迁移工具。 |
如何协同工作
README 中的图表展示了典型的部署方式:前端(例如 Yohaku 的 Next.js 站点)通过 @mx-space/api-client 与 核心服务器 通信。管理 SPA 和 iOS 应用是使用此 SDK 的轻量级客户端。服务器将通知 ID 推送到 推送中继,中继再转发给 Apple 的 APNs。遥测数据匿名发送至 Cloudflare 工作器。
快速上手(开发者视角)
- 安装 Node 22+ 并启用 Corepack。
- 运行
pnpm install获取所有包。 - 使用 Docker 启动 PostgreSQL 和 Redis(
docker compose up -d postgres redis)。 - 运行
pnpm dev启动服务器(http://localhost:2333),运行pnpm dev:admin启动管理 UI(http://localhost:9528)。 - 使用提供的 CLI(
mxs)创建内容和配置,通过 OIDC 设备流进行认证。
显著特性
- AI 合约 –
@mx-space/ai包定义了服务器端的 SSE 事件类型,客户端可订阅以获取 AI 生成的内容或建议。 - 类型安全 SDK –
@mx-space/api-client为前端提供完整的 TypeScript 类型,减少运行时错误。 - 模块化部署 – 推送中继和遥测是独立服务,可仅运行所需部分。
- 迁移工具 –
mongo-pg-cli帮助将旧版 MongoDB 数据迁移到新的 PostgreSQL 模式。
适合谁使用?
- 希望拥有自托管、AI 增强博客平台的个人创作者。
- 寻找现成的、拥有强大 TypeScript 生态系统且可选原生 iOS 管理端的开发者。
- 需要以隐私为先的推送通知(通过 Rust 中继)的团队。
许可证
采用 AGPL-v3 + MIT 双重许可,附加条款见 ADDITIONAL_TERMS.md。
- 上述所有信息均直接来自仓库的 README,未添加任何外部假设。*
相关
- 项目
- 项目
- 项目
- 项目