@yss123/create-cage-app 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +10 -65
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -1,81 +1,26 @@
1
1
  # @yss123/create-cage-app
2
2
 
3
- 从 Cage 模板创建 TypeScript + React 中后台项目。生成领域声明、契约、API、worker、业务 Web 与部署配置,由同版本 `@yss123/cage-*` 包提供框架能力。本包是 `cage create` 的简短命令入口,无需全局安装,也没有供业务导入的运行时 API。
3
+ cage create 的简短入口,用模板创建 TypeScript + React 业务项目,框架由同版本 @yss123/cage-* 依赖提供。无需全局安装,本包没有业务运行时 API。
4
4
 
5
- 产物自带 `AGENTS.md`、`CLAUDE.md`、`.agents/skills/cage-development`、`docs/development` 业务开发指南、采购标准范例与 `docs/errors` 错误码册。使用编程 agent 时,从这些入口读取项目内的 Cage Skill;需求或文档不明确时,提出疑点、可行选项与推荐,由用户选择业务规则,再按框架实现和验收,无需克隆 Cage 框架仓库。
5
+ ## 创建
6
6
 
7
- 这些资料随新项目一起创建。已有项目的 `cage sync` 只更新 AGENTS 托管区,不会自动刷新教材或 Skill;升级时需从同版本模板审查并合入资料,保留项目自己的业务约定。
8
-
9
- ## 使用
10
-
11
- ```powershell
12
- pnpm create @yss123/cage-app my-app
13
- ```
14
-
15
- 交互终端用 ↑↓ 选择,Enter 确认;Ctrl+C 取消不会创建项目。省略项目名时还会询问目录。
16
-
17
- | 模板 | 内容 |
18
- | --- | --- |
19
- | 空白业务项目 `blank` | 登录、用户/部门/角色、权限、系统管理和 框架教材;采购源码仅存于 docs 供参考 |
20
- | 采购示例项目 `purchase` | 完整采购、库存锁、审批、fake ERP 及业务页面 |
21
-
22
- 脚本或 CI 可跳过选择,必须明确指定目录和模板:
7
+ 需要 Node.js 24+、pnpm 10:
23
8
 
24
9
  ```powershell
25
10
  pnpm create @yss123/cage-app my-app --template blank
26
11
  pnpm create @yss123/cage-app purchase-demo --template purchase
27
12
  ```
28
13
 
29
- 不指定版本时使用 npm 当前版本;复现某次创建时可在包名后加 `@版本号`。目标目录应尚不存在,创建器不会替你覆盖已有项目。本地框架测试可在源码仓库运行 `node packages/cli/bin/cage.js create ../my-app --template blank --framework-path F:/cage`;普通 npm 使用不传此选项。
30
-
31
- 首次使用建议通过脚手架创建完整项目,所需依赖由模板统一配置。需要 Node.js 24 或更新版本。
32
-
33
- ## 创建后如何运行
34
-
35
- 还需要 pnpm 10 和一个已存在的 PostgreSQL 数据库。进入生成项目并安装依赖:
36
-
37
- ```powershell
38
- cd my-app
39
- pnpm install
40
- ```
41
-
42
- 复制 `.env.example` 为 `.env`,按注释填写本地 `CAGE_ADMIN_DATABASE_URL`,不要把真实连接串提交到源码。初始化会准备应用、只读与迁移账号,保留配置并移除管理员连接:
43
-
44
- ```powershell
45
- pnpm exec cage init
46
- pnpm build:app
47
- pnpm gen
48
- ```
49
-
50
- 审查 `db/migrations` 后执行迁移,显式初始化组织,再启动开发环境:
51
-
52
- ```powershell
53
- pnpm migrate
54
- pnpm exec cage bootstrap --credentials-file .cage/admin-credentials.json
55
- pnpm dev
56
- ```
57
-
58
- 在浏览器打开终端打印的 Web 地址。初始凭据保存在新的受限文件中,交付后移除;API 日常启动不初始化账号或输出密码。框架不创建数据库、不管理 Docker,也不会自动给生产角色授予新增业务能力。
14
+ 也可省略参数交互选择,取消不会创建项目。目标目录应尚不存在;复现某次创建时显式指定版本。
59
15
 
60
- ## 在哪里写业务
16
+ blank 提供登录、组织、权限和系统管理,采购源码仅在 docs 中供参考。purchase 带采购、审批、库存锁、ERP fake 与业务页面。
61
17
 
62
- | 生成目录 | 用途 |
63
- | --- | --- |
64
- | `packages/domain/src/modules` | 聚合、命令、事件、查询和审批,经 domain 根入口导出 |
65
- | `packages/contracts` | `pnpm gen` 生成的前端类型与接口,不手改 |
66
- | `apps/api/src` | API 与 worker 的薄启动入口 |
67
- | `apps/web/src/app` | 路由、Provider 与页面组合 |
68
- | `apps/web/src/modules` | 按业务模块组织页面与交互 |
69
- | `apps/web/src/shared` | 无具体业务归属的共用组件和工具 |
70
- | `db/migrations` | 审查后的数据库迁移,已执行版本不改写 |
71
- | `docs/development`、`docs/errors` | 本地学习资料和错误排查 |
18
+ ## 创建后
72
19
 
73
- 新增对象后运行 `pnpm exec cage check`、`pnpm gen`,审查迁移,并由管理员配置新能力与数据范围。
20
+ 按本地启动指南配置已有 PostgreSQL,再 init、构建/生成、审查迁移、bootstrap 并 dev。初始凭据通过新受限文件交付,已有账号不重置;数据库服务由使用者环境提供。
74
21
 
75
- 空白模板中的采购源码仅位于 `docs/examples/purchase-admin`,不参与运行或建表;采购模板的 ERP 默认 fake 不等于真实联调通过,AI 能力也需模型配置、权限和迁移才能实际使用。
22
+ 项目含 AGENTS.md、CLAUDE.md、.agents/skills/cage-development、本地 docs/development 和 docs/errors。人从开发手册学习,AI 读取项目约束与 Skill,客户规则留在托管区外。
76
23
 
77
- - [当前开发指南与 Agent 流程](https://github.com/shunshunyue/cage/blob/main/docs/development/README.md)
78
- - [框架源码与范例](https://github.com/shunshunyue/cage)
79
- - [问题反馈](https://github.com/shunshunyue/cage/issues)
24
+ 已有项目升级需审查对应版本资料;cage sync 只更新 AGENTS 区块,不自动覆盖教材或客户业务。普通 npm 创建不使用源码 framework-path 或本机链接。
80
25
 
81
- 许可证:[MIT](https://github.com/shunshunyue/cage/blob/main/LICENSE)。
26
+ [启动指南](https://github.com/shunshunyue/cage/blob/main/docs/development/getting-started/start.md) · [开发手册](https://github.com/shunshunyue/cage/blob/main/docs/development/README.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yss123/create-cage-app",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "type": "module",
5
5
  "description": "从 Cage 薄壳模板创建中后台项目",
6
6
  "bin": {
@@ -10,7 +10,7 @@
10
10
  "bin"
11
11
  ],
12
12
  "dependencies": {
13
- "@yss123/cage-cli": "0.4.0"
13
+ "@yss123/cage-cli": "0.4.1"
14
14
  },
15
15
  "license": "MIT",
16
16
  "repository": {