ZeroCMF:高性能、插件化的全栈内容管理框架

83 阅读2分钟

为什么选择 ZeroCMF?

ZeroCMF 是一款基于 Koa 和 TypeScript 的现代化内容管理框架,专为企业级应用设计。与传统 CMS 不同,我们提供:

  • 极致性能:优化的数据层设计,比传统 CMS 快 2-3 倍
  • 真正的插件化:即插即用的模块,无需修改核心代码
  • 多场景部署:支持传统服务器、Docker 容器、Serverless 等多种部署方式
  • 企业级安全:完整的 RBAC 权限体系,包括菜单权限、按钮权限和数据权限
  • 开发者友好:TypeScript 全栈开发,自动生成 API 文档

应用场景

  • 企业官网与内容管理
  • 中后台管理系统快速开发
  • 微服务 API 网关
  • SaaS 平台基础设施

️ 在线体验

v2-7f50b69497299ba5751ed48cd0a5dcc9_1440w.png 系统登录页

image.png 界面展示

API 文档

自动生成的 Swagger 文档:demo.zerocmf.com/api/swagger

✨ 核心特性

系统功能

  • 完整权限体系:基于 RBAC 模型的用户、角色、权限管理
  • 组织架构:多级部门管理,适合各种规模企业
  • 系统监控:操作日志、登录日志、服务状态监控
  • ️ 素材管理:集成的媒体库,支持图片、视频、文档管理

技术特性

  • ️ 现代技术栈:Koa2 + TypeScript + Prisma ORM
  • 安全认证:JWT + Casbin 实现细粒度授权
  • API文档:集成 Swagger,自动生成 API 文档
  • 插件系统:模块化设计,支持热插拔
  • 多数据库:支持 MySQL、PostgreSQL、SQLite
  • ☁️ 云原生:适配主流云服务,支持 Serverless 部署

⏱️ 5分钟快速开始

安装依赖

# 克隆项目
git clone https://github.com/yourusername/zerocmf.git
cd zerocmf

# 安装依赖
npm install

# 配置环境
cp .env.example .env
# 编辑 .env 文件,配置数据库连接

初始化数据库

# 初始化数据库
npx prisma migrate dev --name init

启动开发服务器

# 开发模式
npm run dev

# 访问 http://localhost:3000
# 默认管理员账号: admin 密码: admin123

Docker 一键部署 (可选)

docker-compose up -d

️ 核心架构

_private_var_folders_h4_b9vmxpvd4m35jdr4_c_3p5h80000gn_T_crossnote202531-93745-277cc9.cw0so.html.png

️ 核心架构

️ 目录结构

src/
├── cmf/          # 核心框架
│   ├── core/     # 核心组件
│   ├── middleware/  # 中间件
│   └── utils/    # 工具函数
├── config/       # 配置文件
├── plugins/      # 插件系统
│   ├── admin/    # 管理后台
│   ├── auth/     # 认证模块
│   └── content/  # 内容管理
├── typings/      # 类型定义
└── index.ts      # 主入口

代码示例

创建自定义 API 控制器

// 在插件中创建自定义控制器
import { Context, Next } from "koa";
export const custom = async (ctx: Context, next: Next) => {
    // 你的逻辑
    await next();
}

插件开发示例

// 插件目录结构
plugins/
└── article/
    ├── controller/
    │   └── ArticleController.ts
    ├── model/
    │   └── article.model.ts
    ├── service/
    │   └── ArticleService.ts
    └── index.ts  // 插件入口

性能对比

框架请求/秒平均响应时间
ZeroCMF3,20012ms
Express1,80022ms
传统CMS90045ms

*基于2核4G服务器,10K并发测试

社区与支持

环境要求

  • Node.js 18.15+
  • MySQL 8.0+ / PostgreSQL 13+ / SQLite 3
  • 推荐使用 PNPM 7.18+

许可证

MIT License