ylyx-cli 1.0.15 → 1.1.0
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.
- package/README.md +313 -276
- package/bin/ylyx.js +32 -24
- package/lib/config.js +188 -162
- package/lib/deploy.js +100 -86
- package/lib/environments.js +111 -0
- package/package.json +61 -59
- package/templates/react-app/files/.gitignore +22 -0
- package/templates/vue-app/files/.gitignore +24 -0
package/README.md
CHANGED
|
@@ -1,276 +1,313 @@
|
|
|
1
|
-
# YLYX CLI - 项目脚手架工具
|
|
2
|
-
|
|
3
|
-
公司内部使用的项目脚手架工具:支持交互式/命令式生成项目与代码模板,并提供 `.ylyxrc.json`
|
|
4
|
-
|
|
5
|
-
>
|
|
6
|
-
|
|
7
|
-
## 功能特性
|
|
8
|
-
|
|
9
|
-
- 🚀 **快速生成项目代码**:内置多种模板,一键生成项目/组件/模块代码
|
|
10
|
-
- 📦 **模板化管理**:模板目录结构清晰,易维护、易扩展;支持本地模板添加
|
|
11
|
-
- ☁️ **云端模板**:支持从 GitHub/GitLab 仓库安装模板(含私有仓库 SSH 场景)
|
|
12
|
-
- 📝 **交互式命令行**:`create` 支持交互式收集变量,降低使用门槛
|
|
13
|
-
- ⚙️ **项目配置(.ylyxrc.json)**:集中管理模板目录、输出目录、构建目录等配置
|
|
14
|
-
- 🔁
|
|
15
|
-
- 🧰 **初始化配置(init config)**:自动生成 `.ylyxrc.json`、`config/default-*.js`,并可写入 npm 前/后置脚本
|
|
16
|
-
- 🚚 **部署(deploy
|
|
17
|
-
|
|
18
|
-
## 安装
|
|
19
|
-
|
|
20
|
-
### 全局安装
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
npm install -g ylyx-cli
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### 使用 npx(推荐,无需安装)
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
# 使用 npx 直接运行
|
|
30
|
-
npx ylyx-cli create
|
|
31
|
-
|
|
32
|
-
# 生成项目
|
|
33
|
-
npx ylyx-cli generate react-app -n my-project -o ./my-project
|
|
34
|
-
|
|
35
|
-
# 安装远程模板
|
|
36
|
-
npx ylyx-cli install owner/repo
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### 本地开发
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
git clone <repository>
|
|
43
|
-
cd ylyx-cli
|
|
44
|
-
npm install
|
|
45
|
-
npm link # 链接到全局,可以本地测试
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## 使用方法
|
|
49
|
-
|
|
50
|
-
### 快速开始
|
|
51
|
-
|
|
52
|
-
使用交互式方式创建新项目(推荐):
|
|
53
|
-
|
|
54
|
-
```bash
|
|
55
|
-
ylyx create
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
或者直接指定模板和项目名:
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
# 创建一个 React 项目
|
|
62
|
-
ylyx generate react-app -n my-project -o ./my-project
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
### 查看可用模板
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
ylyx list
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### 安装远程模板
|
|
72
|
-
|
|
73
|
-
从 GitHub/GitLab 安装模板:
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
# 使用简写格式(GitHub)
|
|
77
|
-
ylyx install owner/repo
|
|
78
|
-
|
|
79
|
-
# 使用完整 URL
|
|
80
|
-
ylyx install https://github.com/owner/repo
|
|
81
|
-
|
|
82
|
-
# 指定分支和模板名
|
|
83
|
-
ylyx install owner/repo -b develop -n my-template
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
### 添加本地模板
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
ylyx add template-name /path/to/template
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### 查看模板详情
|
|
93
|
-
|
|
94
|
-
```bash
|
|
95
|
-
ylyx info template-name
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
###
|
|
99
|
-
|
|
100
|
-
将当前目录的 `.ylyxrc.json`
|
|
101
|
-
|
|
102
|
-
```bash
|
|
103
|
-
ylyx config
|
|
104
|
-
|
|
105
|
-
ylyx config
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
prod
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
ylyx
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
```bash
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
##
|
|
275
|
-
|
|
276
|
-
|
|
1
|
+
# YLYX CLI - 项目脚手架工具
|
|
2
|
+
|
|
3
|
+
公司内部使用的项目脚手架工具:支持交互式/命令式生成项目与代码模板,并提供 `.ylyxrc.json` 项目配置、支持任意数量的自定义环境切换(dev/test/staging/prod...),以及一键部署(SFTP 上传/仅压缩)等能力。
|
|
4
|
+
|
|
5
|
+
> 说明:每个环境需要在 `.ylyxrc.json` 中显式配置 `buildDir` 等路径信息(不再从 `.env.production` 自动推导)。
|
|
6
|
+
|
|
7
|
+
## 功能特性
|
|
8
|
+
|
|
9
|
+
- 🚀 **快速生成项目代码**:内置多种模板,一键生成项目/组件/模块代码
|
|
10
|
+
- 📦 **模板化管理**:模板目录结构清晰,易维护、易扩展;支持本地模板添加
|
|
11
|
+
- ☁️ **云端模板**:支持从 GitHub/GitLab 仓库安装模板(含私有仓库 SSH 场景)
|
|
12
|
+
- 📝 **交互式命令行**:`create` 支持交互式收集变量,降低使用门槛
|
|
13
|
+
- ⚙️ **项目配置(.ylyxrc.json)**:集中管理模板目录、输出目录、构建目录等配置
|
|
14
|
+
- 🔁 **多环境配置切换**:`.ylyxrc.json` 的 `environments` 支持任意数量的自定义环境(dev/test/staging/prod...),`ylyx config <name>` 一键切换
|
|
15
|
+
- 🧰 **初始化配置(init config)**:自动生成 `.ylyxrc.json`、`config/default-*.js`,并可写入 npm 前/后置脚本
|
|
16
|
+
- 🚚 **部署(deploy)**:按环境 `deployMethod` 决定上传(SFTP,带上传进度)或仅压缩,压缩包命名/顶层目录规则与该环境 `buildDir` 对齐
|
|
17
|
+
|
|
18
|
+
## 安装
|
|
19
|
+
|
|
20
|
+
### 全局安装
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install -g ylyx-cli
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### 使用 npx(推荐,无需安装)
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# 使用 npx 直接运行
|
|
30
|
+
npx ylyx-cli create
|
|
31
|
+
|
|
32
|
+
# 生成项目
|
|
33
|
+
npx ylyx-cli generate react-app -n my-project -o ./my-project
|
|
34
|
+
|
|
35
|
+
# 安装远程模板
|
|
36
|
+
npx ylyx-cli install owner/repo
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 本地开发
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
git clone <repository>
|
|
43
|
+
cd ylyx-cli
|
|
44
|
+
npm install
|
|
45
|
+
npm link # 链接到全局,可以本地测试
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## 使用方法
|
|
49
|
+
|
|
50
|
+
### 快速开始
|
|
51
|
+
|
|
52
|
+
使用交互式方式创建新项目(推荐):
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
ylyx create
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
或者直接指定模板和项目名:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# 创建一个 React 项目
|
|
62
|
+
ylyx generate react-app -n my-project -o ./my-project
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 查看可用模板
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
ylyx list
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### 安装远程模板
|
|
72
|
+
|
|
73
|
+
从 GitHub/GitLab 安装模板:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# 使用简写格式(GitHub)
|
|
77
|
+
ylyx install owner/repo
|
|
78
|
+
|
|
79
|
+
# 使用完整 URL
|
|
80
|
+
ylyx install https://github.com/owner/repo
|
|
81
|
+
|
|
82
|
+
# 指定分支和模板名
|
|
83
|
+
ylyx install owner/repo -b develop -n my-template
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### 添加本地模板
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
ylyx add template-name /path/to/template
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 查看模板详情
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
ylyx info template-name
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### 切换环境(config)
|
|
99
|
+
|
|
100
|
+
将当前目录的 `.ylyxrc.json` 切换到指定环境(环境名来自 `.ylyxrc.json` 的 `environments` 数组,可以是任意自定义名字):
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
ylyx config dev
|
|
104
|
+
ylyx config prod
|
|
105
|
+
ylyx config staging
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
不传参数时进入交互式选择(按本地/部署环境分组,当前环境标注"(当前)",默认光标停在当前环境):
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
ylyx config
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
若 `.ylyxrc.json` 是旧版格式(没有 `configVersion`),命令会报错并提示先运行:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
ylyx migrate config
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### 初始化配置(init config)
|
|
121
|
+
|
|
122
|
+
初始化当前目录的配置文件与默认配置模板(会生成/补齐 `.ylyxrc.json`,并为每个环境创建 `config/default-<name>.js`;默认不覆盖已有文件):
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
ylyx init config
|
|
126
|
+
|
|
127
|
+
# 指定初始 currentEnv
|
|
128
|
+
ylyx init config --env prod
|
|
129
|
+
|
|
130
|
+
# 强制覆盖已存在文件
|
|
131
|
+
ylyx init config --force
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
新项目默认生成两个环境:`dev`(本地开发,`isLocal:true`)和 `prod`(`deployMethod:'zip'`,`buildDir:'dist/app'`)。如果需要 `test`/`staging` 等更多环境,在 `.ylyxrc.json` 的 `environments` 数组里手动追加后,重新运行 `ylyx init config --force` 补写对应的 `config/default-<name>.js` 和 npm 钩子。
|
|
135
|
+
|
|
136
|
+
`init config` 会根据每个环境的 `npmScript` 字段,在当前目录的 `package.json` 中写入 npm 钩子:
|
|
137
|
+
|
|
138
|
+
- `isLocal: true` 的环境(如 dev)→ 写入 `pre<npmScript>: "ylyx config <name>"`
|
|
139
|
+
- 其他环境(如 prod)→ 写入 `post<npmScript>`,若该环境 `deployMethod` 不是 `none`,值为 `"ylyx config <name> && ylyx deploy --env <name>"`,否则只是 `"ylyx config <name>"`
|
|
140
|
+
|
|
141
|
+
每个环境的构建输出目录由该环境条目的 `buildDir` 字段决定,需要显式配置。
|
|
142
|
+
|
|
143
|
+
## deploy(部署)
|
|
144
|
+
|
|
145
|
+
`deploy` 会读取当前项目目录的 `.ylyxrc.json` 的 `environments` 数组,按 `--env <name>` 指定的环境读取对应字段。
|
|
146
|
+
|
|
147
|
+
### 配置示例(.ylyxrc.json)
|
|
148
|
+
|
|
149
|
+
```json
|
|
150
|
+
{
|
|
151
|
+
"configVersion": 2,
|
|
152
|
+
"publicDir": "./public",
|
|
153
|
+
"configDir": "./config",
|
|
154
|
+
"currentEnv": "dev",
|
|
155
|
+
"environments": [
|
|
156
|
+
{ "name": "dev", "isLocal": true, "npmScript": "dev", "deployMethod": "none" },
|
|
157
|
+
{
|
|
158
|
+
"name": "test",
|
|
159
|
+
"npmScript": "build:test",
|
|
160
|
+
"deployMethod": "upload",
|
|
161
|
+
"buildDir": "dist/test",
|
|
162
|
+
"host": "172.17.28.216",
|
|
163
|
+
"port": "22",
|
|
164
|
+
"username": "root",
|
|
165
|
+
"password": "你的密码",
|
|
166
|
+
"localDir": "./dist/test",
|
|
167
|
+
"remoteDir": "/usr/local/nginx/html/TEST_APP",
|
|
168
|
+
"zipAfter": false
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"name": "prod",
|
|
172
|
+
"npmScript": "build:prod",
|
|
173
|
+
"deployMethod": "zip",
|
|
174
|
+
"buildDir": "dist/app",
|
|
175
|
+
"zipOutDir": "./.ylyx-deploy"
|
|
176
|
+
}
|
|
177
|
+
]
|
|
178
|
+
}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### 行为
|
|
182
|
+
|
|
183
|
+
- `deployMethod: 'upload'` 的环境:SFTP 递归上传到服务器(带上传进度)
|
|
184
|
+
- `deployMethod: 'zip'` 的环境:不上传,仅压缩
|
|
185
|
+
- `deployMethod: 'none'` 的环境:不可部署
|
|
186
|
+
|
|
187
|
+
压缩产物命名规则:`buildDir(最后一级)-YYYYMMDDHHmmss-哈希(纯字母).zip`,且 zip 内顶层目录名为 `buildDir` 的最后一级目录名。
|
|
188
|
+
|
|
189
|
+
`localDir` 缺省时使用该环境的 `buildDir`;不再支持从 `.env.production` 自动推导,需要显式配置。
|
|
190
|
+
|
|
191
|
+
### 从旧版配置迁移
|
|
192
|
+
|
|
193
|
+
如果 `.ylyxrc.json` 还是旧格式(`mode`/`deploy`/顶层 `buildDir`),运行:
|
|
194
|
+
|
|
195
|
+
```bash
|
|
196
|
+
ylyx migrate config
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
会自动生成 `dev`(本地开发)、`test`(SFTP 上传)、`prod`(仅压缩)三个环境,并删除旧的 `mode`/`deploy`/`buildDir`/`preScripts` 字段。迁移后请检查 `test`/`prod` 环境里的 `host`/`username`/`password` 等敏感信息,并按需运行 `ylyx init config --force` 补写 `package.json` 的部署钩子。
|
|
200
|
+
|
|
201
|
+
### 上传日志
|
|
202
|
+
|
|
203
|
+
每次执行 `deploy` 会在本地生成一份日志,默认在 `./.ylyx-deploy/logs/`,包含上传/压缩过程与错误信息,便于追溯。
|
|
204
|
+
|
|
205
|
+
### 命令
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
ylyx deploy
|
|
209
|
+
ylyx deploy --env test
|
|
210
|
+
ylyx deploy --env prod
|
|
211
|
+
ylyx deploy --env staging
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## 云端模板
|
|
215
|
+
|
|
216
|
+
模板可以放在 Git 仓库中(如 GitHub、GitLab),使用 `ylyx install` 命令安装。
|
|
217
|
+
|
|
218
|
+
### 模板仓库要求
|
|
219
|
+
|
|
220
|
+
模板仓库需要包含以下结构:
|
|
221
|
+
|
|
222
|
+
```
|
|
223
|
+
your-template/
|
|
224
|
+
template.json # 模板配置文件(可选)
|
|
225
|
+
files/ # 模板文件目录
|
|
226
|
+
...
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### 示例
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
# 从 GitHub 安装模板
|
|
233
|
+
ylyx install github-user/react-template
|
|
234
|
+
|
|
235
|
+
# 从私有仓库安装(需要配置 SSH 密钥)
|
|
236
|
+
ylyx install git@github.com:company/templates.git
|
|
237
|
+
|
|
238
|
+
# 指定分支
|
|
239
|
+
ylyx install owner/repo -b v2.0
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
## 模板配置
|
|
243
|
+
|
|
244
|
+
模板应放在 `templates/` 目录下,结构如下:
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
templates/
|
|
248
|
+
template-name/
|
|
249
|
+
template.json # 模板配置文件
|
|
250
|
+
files/ # 模板文件目录
|
|
251
|
+
example.js
|
|
252
|
+
example.css
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### template.json 配置示例
|
|
256
|
+
|
|
257
|
+
```json
|
|
258
|
+
{
|
|
259
|
+
"name": "template-name",
|
|
260
|
+
"description": "模板描述",
|
|
261
|
+
"version": "1.0.0",
|
|
262
|
+
"variables": {
|
|
263
|
+
"projectName": {
|
|
264
|
+
"type": "input",
|
|
265
|
+
"message": "请输入项目名称",
|
|
266
|
+
"default": "my-project"
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
"processFiles": ["package.json", "README.md", "*.json"],
|
|
270
|
+
"skipFiles": ["**/*.vue", "**/*.js"]
|
|
271
|
+
}
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## 配置文件
|
|
275
|
+
|
|
276
|
+
可以在项目根目录创建 `.ylyxrc.json` 配置文件:
|
|
277
|
+
|
|
278
|
+
```json
|
|
279
|
+
{
|
|
280
|
+
"configVersion": 2,
|
|
281
|
+
"currentEnv": "dev",
|
|
282
|
+
"publicDir": "./public",
|
|
283
|
+
"configDir": "./config",
|
|
284
|
+
"environments": [
|
|
285
|
+
{ "name": "dev", "isLocal": true, "npmScript": "dev", "deployMethod": "none" },
|
|
286
|
+
{ "name": "prod", "npmScript": "build:prod", "deployMethod": "zip", "buildDir": "dist/app" }
|
|
287
|
+
],
|
|
288
|
+
"templatesDir": "./templates",
|
|
289
|
+
"outputDir": "./src",
|
|
290
|
+
"defaultVariables": {
|
|
291
|
+
"author": "Your Name",
|
|
292
|
+
"company": "YLYX"
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
## 示例
|
|
298
|
+
|
|
299
|
+
### 生成完整项目
|
|
300
|
+
|
|
301
|
+
```bash
|
|
302
|
+
# 生成 React 项目
|
|
303
|
+
ylyx generate react-app -n my-react-app -o ./my-react-app
|
|
304
|
+
|
|
305
|
+
# 生成后进入目录并安装依赖
|
|
306
|
+
cd my-react-app
|
|
307
|
+
npm install
|
|
308
|
+
npm start
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
## License
|
|
312
|
+
|
|
313
|
+
ISC
|