# g2rain-cms-app(CMS 微前端子应用)
g2rain-cms-app 是基于 Vue 3 + TypeScript + Vite + Element Plus + qiankun 的 CMS 业务微前端子应用:既可被主应用(Shell)加载,也可独立运行。页面与生成器产出侧重 内容管理 场景,与 G2rain 统一认证、资源与网关约定一致。
能力会持续迭代,以仓库内 ARCHITECHTURE.md / ARCHITECTURE_SPEC.md 与代码为准。
源码仓库:github.com/g2rain/g2rain-cms-app (opens new window)
# 与平台能力的衔接
- 主应用:g2rain-main-shell 负责装载子应用、SSO 与 Token 传递。
- 模板与脚手架:g2rain-app-template、g2rain-app-cli(
npm create g2rain-app@latest)。 - 基建类子应用(路由/字典等 UI):g2rain-infra-app 与本文档并列,按需选用。
- 后端 CMS API:g2rain-cms 提供 REST 接口;
VITE_BACKEND_ORIGIN通常指向平台网关。
# 环境要求
- Node.js ≥ 18、npm ≥ 9(与仓库
package.json/engines一致)
# 安装与启动
git clone https://github.com/g2rain/g2rain-cms-app.git
cd g2rain-cms-app
npm install
npm run dev
# .env 最小示例
VITE_APPLICATION_CODE=g2rain-cms-app
VITE_BASE_URL=/test/
VITE_BACKEND_ORIGIN=http://localhost:8080
VITE_APPLICATION_CONTEXT=/test
VITE_IAM_ORIGIN=http://localhost:8080
VITE_REFRESH_TOKEN_URL=/auth/refresh-token
VITE_GENERATE_TOKEN_URL=/auth/token
VITE_SSO_BASE_URL=https://sso.example.com
VITE_AUTH_END_POINT=/auth/authorize
VITE_REDIRECT_URI=http://localhost:3000/test/sso_callback
VITE_SERVER_PORT=3000
请将 SSO、回调地址、上下文路径替换为你的实际环境;与 快速开始 中的变量含义一致。
# 构建与预览
npm run build
npm run preview
仓库提供 Dockerfile 与根目录 build.sh 时,可按 README 构建镜像(镜像名常取自 package.json 的 name)。
# 代码与配置生成
npm run build:generate -- --tables=dict
常用参数:--no-view、--no-api、--no-mock、--no-route。
npm run build:config
生成物通常位于 src/shared/config-util/config/(多在 .gitignore 中,勿提交)。
# 贡献与问题跟踪
建议在主仓库集中讨论:g2rain/g2rain/issues (opens new window),标题或正文中注明 g2rain-cms-app。安全见仓库 SECURITY.md。