系统介绍
什么是 TGeniePress
系统定位
TGeniePress 是一套以插件为核心架构的企业级内容与页面管理平台,也可理解为插件驱动型的内容与应用扩展平台。
平台将传统 CMS、页面构建与可编程扩展放在同一套宿主之上:内核提供账号、权限、内容中心、页面系统、配置、存储与任务调度等基础能力;具体业务则以插件形式接入,通过统一的 Context API 与宿主协作,在权限与命名空间约束下运行。
一句话理解:不是「在 CMS 上附带插件」,而是围绕插件机制设计整个平台;插件是一等公民,而不是附属模块。
核心能力
内容管理
统一管理内容实体、分类、标签、访问策略、发布流程与站点归属。内置例如 post 等内容类型,并支持通过插件注册自定义内容类型与扩展字段。
典型特征包括:草稿 / 审核 / 发布等状态流转、按站点与访问策略控制前台可见性、与权限体系联动的读写控制。
插件系统
插件是扩展的主通道:前端插件可扩展菜单、页面构建模块、编辑器与事件等;服务端插件可注册路由、服务、Hook、任务、队列,以及数据建模定义(模型类型 / 模型字段 / 模型访问策略)等。
插件通过 plugin.json 声明元数据、入口与权限,在 setup(ctx) 中接入宿主;支持加载、运行与卸载阶段的资源回收,并在 RBAC 与插件权限声明下受控访问。
页面构建
面向首页、落地页、专题页等场景的页面编排能力:页面由已注册的模块/组件拼装,支持按终端(如 PC / H5)与站点维度组织不同版本,并与内容、插件能力联动。
理念可概括为:页面 = 数据 + 组件 + 插件能力。
其他与底座相关的能力
除上述三条主线外,宿主还提供 RBAC 权限、多站点(按域名字段等实现数据与配置隔离)、任务与队列(定时调度与异步消费)、存储适配(本地或可插拔存储)等运行支撑,便于在生产环境中持续扩展。
适用场景
适合谁用
| 角色 | 说明 |
|---|---|
| 开发者 / 插件作者 | 在平台交付的开发包里,仅用 Context API 与插件目录完成前后端插件开发;不依赖、也不需要接触宿主主仓库或宿主服务端源码 |
| 站长 / 运营 / 内容团队 | 使用内容中心与页面系统进行采编、发布与页面编排 |
| 企业 / 实施方 | 搭建多站点内容平台、行业方案底座或需持续演进的业务门户 |
| 宿主维护者(少数) | 在完整宿主工程内修改核心与构建管线;与插件作者的日常路径不同 |
插件开发与宿主内核开发是两条线:绝大多数开发者只围绕开发包与插件代码工作。
典型场景举例
- 企业官网、资讯站、文档/知识库等内容统一生产与发布
- 活动页、营销落地页等需频繁编排的页面场景
- 希望在不改核心代码的前提下,以插件模块化交付与迭代业务能力
- 需要在同一套后台下管理多个品牌站或分站(多站点隔离)
架构概览
一句话:宿主分为平台核心层、Context API 扩展层与业务插件层——核心保持稳定,扩展全部通过受控上下文进入系统。
┌─────────────────────────────────────────────┐
│ 业务扩展层(Plugins) │
│ 站点业务插件 · 第三方集成 · 自定义模块 │
├─────────────────────────────────────────────┤
│ 插件扩展层(Context API) │
│ 前端 ctx.ui / ctx.navigation / ctx.events …│
│ 后端 ctx.router / ctx.service / ctx.hooks …│
├─────────────────────────────────────────────┤
│ 平台核心层(Host) │
│ 认证 · 权限 · 内容 · 页面 · 配置 · 存储 · 任务 │
└─────────────────────────────────────────────┘
技术侧可简记:Vue 3 + Pinia + Vue Router + Element Plus 构成前端宿主;Express(Node.js)+ Prisma + PostgreSQL 构成后端宿主;实时能力可使用 Socket.IO。服务端启动时依次完成 Express 初始化、数据库连接、核心路由与中间件、插件加载、任务与 Socket 等装配;请求经网关与路由进入业务或插件注册的处理器后返回。
从对外表述上也可记一句:TGeniePress ≈ 企业级 CMS + 页面构建 + 插件平台,在同一宿主上完成内容、页面与可编程扩展。
阅读提示
当前文档 slug: xitongjieshao ,来源路径: jichuzhinan/xitongjieshao.md