GoWind 开源生态GoWind 开源生态
首页
框架
GoWind Admin
GoWind CMS
GoWind IM
GoWind UBA
GoWind IoT
GoWind Toolkit
GoWind Quant
GitHub
首页
框架
GoWind Admin
GoWind CMS
GoWind IM
GoWind UBA
GoWind IoT
GoWind Toolkit
GoWind Quant
GitHub
  • 介绍

    • GoWind CMS 产品介绍
    • GoWind CMS 安装指南
  • 后端文档

    • CMS 后端架构总览
    • CMS 后端模块总览
    • CMS Protobuf API 定义
    • CMS 配置与部署指南
    • 后端扩展机制指南
  • 前端文档

    • CMS 前端架构
    • CMS 前端模块总览
  • 入门教程

    • 新增内容类型全栈实战教程
    • 多端 API 客户端代码生成教程
  • 核心教程

    • 内容多语言翻译实战教程
    • 内容发布工作流实战教程
    • 区块编辑器实战教程
    • Headless API 对接多端实战教程
    • 前台应用开发实战教程
  • 进阶教程

    • 多站点管理实战教程
    • 媒体资源管理实战教程
    • 评论系统实战教程
    • 事件总线架构实战教程
    • Lua 脚本扩展实战教程
  • 高阶教程

    • 权限系统实战教程
    • 双端登录安全实战教程
    • 加密与安全工具实战教程
    • 全文搜索实战教程
    • 任务调度实战教程
    • 实时消息推送实战教程
    • 性能监控实战教程
    • 字典管理系统实战教程
  • 综合教程

    • 全栈集成实战教程
    • 三服务部署实战教程

CMS 前端模块总览

GoWind CMS 前端由 1 个管理后台 + 4 套前台应用组成。本文档梳理所有前端模块的职责、技术栈和目录结构。

一、前端全景

二、管理后台模块

2.1 技术栈

技术说明
Vue 3 + TypeScript核心框架
Vben Admin (Monorepo)后台管理框架
Ant Design Vue 4UI 组件库
Vue Query (TanStack Query)数据获取与缓存
Pinia状态管理
Vite 5构建工具

2.2 功能模块

模块目录功能
内容管理views/content/
- 帖子管理views/content/post/帖子 CRUD + 区块编辑器 + 翻译
- 分类管理views/content/category/分类树 + 翻译
- 标签管理views/content/tag/标签 + 翻译
- 页面管理views/content/page/自定义页面
- 评论管理views/content/comment/评论审核 + 回复
站点管理views/site/
- 站点列表views/site/list/多站点 CRUD
- 站点配置views/site/setting/SEO / 上传 / 缓存
- 导航管理views/site/navigation/导航栏 + 导航项
媒体资源views/media/媒体库 + 图片选择器
系统管理views/system/
- 用户管理views/system/user/用户 CRUD + 代登录
- 角色管理views/system/role/角色 + 权限分配
- 权限管理views/system/permission/权限点 + 菜单
- 部门管理views/system/dept/部门树
- 字典管理views/system/dict/字典类型 + 子项
- 任务调度views/system/task/定时任务 + 日志
- 缓存管理views/system/cache/缓存查询 + 清理
- 接口管理views/system/api/接口同步 + 树形
日志审计views/log/登录日志 / 操作日志 / API 审计
个人中心views/profile/资料 / 头像 / 密码 / 登录记录
国际化views/i18n/语言管理 + 翻译编辑

2.3 API 层

src/api/
├── client.ts                    # ApiClient 单例
├── index.ts                     # 统一导出
├── composables/                 # Vue Query Hooks
│   ├── post.ts                  # 帖子相关 hooks
│   ├── category.ts
│   ├── tag.ts
│   ├── comment.ts
│   ├── user.ts
│   ├── site.ts
│   ├── media.ts
│   └── ...
├── generated/                   # Protobuf 自动生成
└── types.ts                     # 类型定义

2.4 核心组件

组件说明
SectionEditor区块化内容编辑器
RichTextEditorTipTap 富文本
MediaPicker图片选择器
TranslationTabs多语言翻译编辑
CategoryTree分类树组件
AccessControl按钮级权限控制

三、React 前台(Next.js)

3.1 功能模块

页面路由说明
首页/[locale]最新文章列表
文章列表/[locale]/posts分页文章
文章详情/[locale]/posts/[slug]SSR 渲染 + 评论
分类/[locale]/categories/[slug]分类文章
标签/[locale]/tags/[slug]标签文章
搜索/[locale]/search全文搜索
关于/[locale]/about关于页面
登录/[locale]/login用户登录
注册/[locale]/register用户注册
个人中心/[locale]/profile资料编辑

3.2 组件

组件说明
PostCard文章卡片
SectionRenderer区块内容渲染
CommentSection评论区
SearchBar搜索栏 + 建议下拉
LanguageSwitcher语言切换
NotificationBell通知角标
SSEProviderSSE 连接管理

四、Vue 前台(Nuxt.js)

页面路由说明
首页/最新内容
文章/posts/[slug]文章详情
分类/categories/[slug]分类文章
关于/about关于页面

五、Taro 前台(小程序/H5)

页面路由说明
首页pages/index/indexTab 页
文章列表pages/posts/index文章列表
文章详情pages/posts/detail文章详情
分类pages/category/indexTab 页
个人中心pages/profile/indexTab 页

六、Flutter 前台

6.1 Feature-First 架构

Feature说明
home首页 + 推荐内容
explore探索 + 搜索
post_detail文章详情 + 评论
post_list文章列表
category分类浏览
tag标签浏览
search搜索功能
bookmark收藏书签
profile个人资料
settings应用设置

6.2 每个 Feature 三层

features/home/
├── data/           # 数据层(API + Model)
├── domain/         # 领域层(Repository + Entity)
└── presentation/   # 表现层(BLoC + Widget)

七、共享约定

7.1 API 调用统一

约定说明
分页参数page / pageSize / orderBy / orderDesc
语言参数locale 查询参数
认证头Authorization: Bearer {token}
错误格式{ code, reason, message }

7.2 国际化

版本方案消息文件
管理后台Vben i18nsrc/locales/zh-CN/*.json
Reactnext-intlsrc/messages/*.json
Vue@nuxtjs/i18nlocales/*.json
TaroTaro i18nsrc/i18n/*.ts
Flutterflutter_localizationslib/l10n/app_*.arb

八、相关文档

  • CMS 前端架构
  • 前台应用开发实战
  • 区块编辑器实战
  • CMS 后端模块总览
Edit this page
Last Updated:: 6/21/26, 8:19 PM
Contributors: Bobo
Prev
CMS 前端架构