flu-cli 2.0.0 → 2.0.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.
- package/CLI.md +226 -63
- package/README.md +56 -29
- package/index.js +61 -12
- package/lib/commands/add.js +177 -54
- package/lib/commands/completion.js +0 -2
- package/lib/commands/config.js +70 -0
- package/lib/commands/newClack.js +9 -6
- package/lib/commands/template.js +113 -0
- package/lib/utils/templateSelectorEnquirer.js +13 -10
- package/package.json +5 -3
- package/templates/snippets/dart.code-snippets +168 -263
- package/lib/commands/generate.js +0 -26
- package/lib/generators/component_generator.js +0 -93
- package/lib/generators/module_generator.js +0 -141
package/CLI.md
CHANGED
|
@@ -15,26 +15,42 @@ flu-cli add page home
|
|
|
15
15
|
flu-cli --help
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
+
## 新增特性(v2)
|
|
19
|
+
|
|
20
|
+
- 自定义模板管理:支持从本地目录或 Git 仓库添加模板,并在交互式创建时与内置模板一起选择。
|
|
21
|
+
- 项目生成配置:支持在项目根使用 `.flu-cli.json` 配置生成器默认行为(路径、页面类型、是否绑定 ViewModel 等)。
|
|
22
|
+
- 生成联动:CLI 与 VSCode 扩展均会读取 `.flu-cli.json`,保持生成路径与风格一致。
|
|
23
|
+
- Riverpod 原生支持:可选择 Riverpod 状态管理并生成原生风格的 VM/页面(如果模板包含入口片段会自动包裹 `ProviderScope`)。
|
|
24
|
+
|
|
18
25
|
## 命令列表
|
|
19
26
|
|
|
20
27
|
### 1. `new` - 创建项目
|
|
21
28
|
|
|
22
29
|
创建一个新的 Flutter 项目,支持多种模板和状态管理器。
|
|
23
30
|
|
|
24
|
-
|
|
31
|
+
**选项:**
|
|
32
|
+
|
|
25
33
|
```bash
|
|
26
34
|
flu-cli new [项目名称] [选项]
|
|
27
35
|
flu-cli n [项目名称] # 简写
|
|
28
36
|
```
|
|
29
37
|
|
|
30
38
|
**选项:**
|
|
31
|
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
39
|
+
|
|
40
|
+
- `-t, --template <type>` - 模板类型: `lite`, `modular`, `clean`
|
|
41
|
+
- `-s, --state <type>` - 状态管理器: `default`, `provider`, `getx`, `riverpod`
|
|
42
|
+
- `-d, --dir <path>` - 项目存放目录(默认:当前目录)
|
|
43
|
+
- `--no-cache` - 不使用缓存,强制从 Git 拉取
|
|
44
|
+
- `--remote` - 使用远程 Gitee 模板(默认使用本地模板)
|
|
45
|
+
|
|
46
|
+
**说明:**
|
|
47
|
+
|
|
48
|
+
- 交互式创建时会展示“内置模板 + 你通过 `template add` 保存的自定义模板”,可直接选择。
|
|
49
|
+
- 模板复制后会执行占位符替换(如 `{{projectName}}`、`{{package_name}}`)并校正 `pubspec.yaml` 的 `name`。
|
|
50
|
+
- 已存在 `.flu-cli.json` 的项目中再次生成文件时,会遵循其中的路径与风格设置。
|
|
36
51
|
|
|
37
52
|
**示例:**
|
|
53
|
+
|
|
38
54
|
```bash
|
|
39
55
|
# 交互式创建(推荐)
|
|
40
56
|
flu-cli new
|
|
@@ -56,6 +72,7 @@ flu-cli new my_app -t modular -s provider -d ~/projects
|
|
|
56
72
|
在当前项目中添加各种代码组件。
|
|
57
73
|
|
|
58
74
|
**用法:**
|
|
75
|
+
|
|
59
76
|
```bash
|
|
60
77
|
flu-cli add <类型> <名称> [选项]
|
|
61
78
|
flu-cli a <类型> <名称> # 简写
|
|
@@ -63,27 +80,34 @@ flu-cli a <类型> <名称> # 简写
|
|
|
63
80
|
|
|
64
81
|
**支持的类型及别名:**
|
|
65
82
|
|
|
66
|
-
| 类型
|
|
67
|
-
|
|
68
|
-
| `page`
|
|
69
|
-
| `widget`
|
|
70
|
-
| `component` | `c`
|
|
71
|
-
| `viewmodel` | `v`
|
|
72
|
-
| `service`
|
|
73
|
-
| `model`
|
|
74
|
-
| `module`
|
|
83
|
+
| 类型 | 别名 | 说明 |
|
|
84
|
+
| ----------- | ----- | ------------ |
|
|
85
|
+
| `page` | `p` | 页面组件 |
|
|
86
|
+
| `widget` | `w` | 通用组件 |
|
|
87
|
+
| `component` | `c` | 业务组件 |
|
|
88
|
+
| `viewmodel` | `v` | ViewModel |
|
|
89
|
+
| `service` | `s` | 服务层 |
|
|
90
|
+
| `model` | `m` | 数据模型 |
|
|
91
|
+
| `module` | `mod` | 完整功能模块 |
|
|
75
92
|
|
|
76
93
|
**选项:**
|
|
77
|
-
|
|
78
|
-
-
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
-
|
|
94
|
+
|
|
95
|
+
- `-f, --feature <name>` - 所属功能模块(仅 modular/clean 模式)
|
|
96
|
+
- `--stateful` - 创建 StatefulWidget
|
|
97
|
+
- `--stateless` - 强制创建 StatelessWidget
|
|
98
|
+
- `--list-page` - 创建列表页 (BaseListPage)
|
|
99
|
+
- `--no-vm` - 不生成 ViewModel(仅 page 类型)
|
|
100
|
+
- `--type <type>` - Service 类型: `api`, `storage`, `auth`(仅 service 类型)
|
|
101
|
+
- `--json <file>` - 从 JSON 文件生成(仅 model 类型)
|
|
102
|
+
- `--list` - 查看支持的类型列表
|
|
103
|
+
|
|
104
|
+
**说明:**
|
|
105
|
+
|
|
106
|
+
- 若项目根存在 `.flu-cli.json`,`add` 会遵循其中的路径与默认类型(如 `generators.page.path`、`defaultType`、`withViewModel`)。
|
|
107
|
+
- 在 `modular/clean` 模板下可用 `-f <feature>` 指定模块以生成到模块目录结构(如 `lib/features/user/...`)。
|
|
85
108
|
|
|
86
109
|
**示例:**
|
|
110
|
+
|
|
87
111
|
```bash
|
|
88
112
|
# 添加页面(自动生成 ViewModel)
|
|
89
113
|
flu-cli add page home
|
|
@@ -111,6 +135,25 @@ flu-cli add m user # 简写
|
|
|
111
135
|
flu-cli add page product -f shop
|
|
112
136
|
```
|
|
113
137
|
|
|
138
|
+
### 2.5 `service` - 服务层
|
|
139
|
+
|
|
140
|
+
生成 API、存储等服务。
|
|
141
|
+
|
|
142
|
+
**选项:**
|
|
143
|
+
|
|
144
|
+
- `-f, --feature <name>` - 指定功能模块
|
|
145
|
+
- `--type <type>` - 服务类型: api, storage, auth (默认: api) [**已废弃**: 默认生成基础 Service 结构]
|
|
146
|
+
|
|
147
|
+
**示例:**
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
# 生成 User 服务
|
|
151
|
+
flu-cli add service user
|
|
152
|
+
|
|
153
|
+
# 在 auth 模块中生成 AuthService
|
|
154
|
+
flu-cli add service auth --feature auth
|
|
155
|
+
```
|
|
156
|
+
|
|
114
157
|
---
|
|
115
158
|
|
|
116
159
|
### 3. `templates` - 模板管理
|
|
@@ -118,12 +161,14 @@ flu-cli add page product -f shop
|
|
|
118
161
|
查看可用模板列表或指定模板的详细信息。
|
|
119
162
|
|
|
120
163
|
**用法:**
|
|
164
|
+
|
|
121
165
|
```bash
|
|
122
166
|
flu-cli templates [模板名称]
|
|
123
167
|
flu-cli t [模板名称] # 简写
|
|
124
168
|
```
|
|
125
169
|
|
|
126
170
|
**示例:**
|
|
171
|
+
|
|
127
172
|
```bash
|
|
128
173
|
# 查看所有模板
|
|
129
174
|
flu-cli templates
|
|
@@ -135,67 +180,119 @@ flu-cli t modular # 简写
|
|
|
135
180
|
|
|
136
181
|
---
|
|
137
182
|
|
|
138
|
-
###
|
|
183
|
+
### 9. `template` - 自定义模板管理(新增)
|
|
139
184
|
|
|
140
|
-
|
|
185
|
+
用于管理你自己的项目模板,支持从本地目录或 Git 仓库新增模板,并持久化到 `~/.flu-cli/config.json`。在交互式创建项目时,这些模板会与内置模板一起展示并可直接选择。
|
|
141
186
|
|
|
142
187
|
**用法:**
|
|
188
|
+
|
|
143
189
|
```bash
|
|
144
|
-
flu-cli
|
|
145
|
-
flu-cli
|
|
190
|
+
flu-cli template # 查看所有自定义模板(同 list)
|
|
191
|
+
flu-cli template list # 列出所有模板
|
|
192
|
+
flu-cli template add <id> <source> [选项]
|
|
193
|
+
flu-cli template remove <id>
|
|
146
194
|
```
|
|
147
195
|
|
|
148
196
|
**选项:**
|
|
149
|
-
|
|
150
|
-
-
|
|
197
|
+
|
|
198
|
+
- `--local` 使用本地目录作为模板(`source` 为路径)
|
|
199
|
+
- `-n, --name <name>` 显示名称(可选)
|
|
200
|
+
- `-b, --branch <branch>` Git 模板分支(默认 `main`)
|
|
201
|
+
- `-d, --description <text>` 模板描述
|
|
202
|
+
- `-f, --force` 覆盖已存在的同名模板
|
|
151
203
|
|
|
152
204
|
**示例:**
|
|
205
|
+
|
|
153
206
|
```bash
|
|
154
|
-
#
|
|
155
|
-
flu-cli
|
|
207
|
+
# 添加本地模板
|
|
208
|
+
flu-cli template add my-lite /path/to/my-template --local -n "我的 Lite 模板" -d "带业务框架的轻量模板"
|
|
156
209
|
|
|
157
|
-
#
|
|
158
|
-
flu-cli
|
|
210
|
+
# 添加 Git 模板
|
|
211
|
+
flu-cli template add company-clean https://github.com/org/clean-template.git -b main -n "公司 Clean 模板"
|
|
212
|
+
|
|
213
|
+
# 列出/移除模板
|
|
214
|
+
flu-cli template list
|
|
215
|
+
flu-cli template remove my-lite
|
|
159
216
|
```
|
|
160
217
|
|
|
218
|
+
**说明:**
|
|
219
|
+
|
|
220
|
+
- 模板会缓存到 `~/.flu-cli/templates/<id>/`,创建项目时会从缓存复制。
|
|
221
|
+
- 交互式 `flu-cli new` 会把自定义模板和内置模板一起展示,并支持预览说明。
|
|
222
|
+
- 选择 Git 模板时会从远端克隆到缓存目录;选择本地模板时会直接复制到缓存目录。
|
|
223
|
+
|
|
161
224
|
---
|
|
162
225
|
|
|
163
|
-
###
|
|
226
|
+
### 10. `config` - 项目生成配置(新增)
|
|
164
227
|
|
|
165
|
-
|
|
228
|
+
初始化并管理项目根目录下的 `.flu-cli.json`,用于声明生成器的默认行为(路径、页面类型、是否绑定 ViewModel 等)。VSCode 扩展与 v2 的生成命令都会读取该文件。
|
|
166
229
|
|
|
167
230
|
**用法:**
|
|
231
|
+
|
|
168
232
|
```bash
|
|
169
|
-
flu-cli
|
|
170
|
-
flu-cli sync # 简写
|
|
233
|
+
flu-cli config init [选项]
|
|
171
234
|
```
|
|
172
235
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
-
|
|
236
|
+
**选项:**
|
|
237
|
+
|
|
238
|
+
- `-d, --dir <path>` 目标项目目录(默认当前目录)
|
|
239
|
+
- `-f, --force` 覆盖已存在的配置文件
|
|
176
240
|
|
|
177
241
|
**示例:**
|
|
242
|
+
|
|
178
243
|
```bash
|
|
179
|
-
#
|
|
180
|
-
flu-cli
|
|
244
|
+
# 在当前项目生成配置
|
|
245
|
+
flu-cli config init
|
|
246
|
+
|
|
247
|
+
# 指定项目目录并覆盖旧配置
|
|
248
|
+
flu-cli config init -d ~/projects/my_app -f
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**.flu-cli.json 示例(简化):**
|
|
252
|
+
|
|
253
|
+
```json
|
|
254
|
+
{
|
|
255
|
+
"generators": {
|
|
256
|
+
"page": {
|
|
257
|
+
"path": "lib/pages",
|
|
258
|
+
"defaultType": "stateful",
|
|
259
|
+
"withViewModel": true
|
|
260
|
+
},
|
|
261
|
+
"viewModel": {
|
|
262
|
+
"path": "lib/viewmodels"
|
|
263
|
+
},
|
|
264
|
+
"model": {
|
|
265
|
+
"path": "lib/models"
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
181
269
|
```
|
|
182
270
|
|
|
271
|
+
**说明:**
|
|
272
|
+
|
|
273
|
+
- 初始化时会根据项目模板(lite/modular/clean)生成匹配的默认路径。
|
|
274
|
+
- VSCode 插件的“生成文件”命令会优先使用 `.flu-cli.json` 中的设置,无需每次选择类型。
|
|
275
|
+
- 可在自定义模板中提供示例 `.flu-cli.json`,在创建后运行 `flu-cli config init -f` 以覆盖为团队约定。
|
|
276
|
+
|
|
183
277
|
---
|
|
184
278
|
|
|
185
|
-
###
|
|
279
|
+
### 5. `update-templates` - 更新模板缓存
|
|
186
280
|
|
|
187
281
|
更新本地模板缓存到最新版本。
|
|
188
282
|
|
|
189
283
|
**用法:**
|
|
284
|
+
|
|
190
285
|
```bash
|
|
191
286
|
flu-cli update-templates [模板名称]
|
|
192
287
|
flu-cli u [模板名称] # 简写
|
|
193
288
|
```
|
|
194
289
|
|
|
195
290
|
**选项:**
|
|
196
|
-
|
|
291
|
+
|
|
292
|
+
- `--force` - 强制刷新并清理未跟踪文件
|
|
197
293
|
|
|
198
294
|
**示例:**
|
|
295
|
+
|
|
199
296
|
```bash
|
|
200
297
|
# 更新所有模板
|
|
201
298
|
flu-cli update-templates
|
|
@@ -209,20 +306,23 @@ flu-cli update-templates --force
|
|
|
209
306
|
|
|
210
307
|
---
|
|
211
308
|
|
|
212
|
-
###
|
|
309
|
+
### 6. `cache` - 缓存管理
|
|
213
310
|
|
|
214
311
|
管理本地模板缓存。
|
|
215
312
|
|
|
216
313
|
**用法:**
|
|
314
|
+
|
|
217
315
|
```bash
|
|
218
316
|
flu-cli cache <action>
|
|
219
317
|
flu-cli c <action> # 简写
|
|
220
318
|
```
|
|
221
319
|
|
|
222
320
|
**支持的操作:**
|
|
223
|
-
|
|
321
|
+
|
|
322
|
+
- `clean` - 清理缓存
|
|
224
323
|
|
|
225
324
|
**示例:**
|
|
325
|
+
|
|
226
326
|
```bash
|
|
227
327
|
# 清理缓存
|
|
228
328
|
flu-cli cache clean
|
|
@@ -231,17 +331,19 @@ flu-cli c clean # 简写
|
|
|
231
331
|
|
|
232
332
|
---
|
|
233
333
|
|
|
234
|
-
###
|
|
334
|
+
### 7. `completion` - 自动补全
|
|
235
335
|
|
|
236
336
|
生成 Shell 自动补全脚本(支持 Bash/Zsh)。
|
|
237
337
|
|
|
238
338
|
**用法:**
|
|
339
|
+
|
|
239
340
|
```bash
|
|
240
341
|
flu-cli completion
|
|
241
342
|
flu-cli comp # 简写
|
|
242
343
|
```
|
|
243
344
|
|
|
244
345
|
**安装方法:**
|
|
346
|
+
|
|
245
347
|
```bash
|
|
246
348
|
# Zsh
|
|
247
349
|
flu-cli completion >> ~/.zshrc
|
|
@@ -254,9 +356,26 @@ source ~/.bashrc
|
|
|
254
356
|
|
|
255
357
|
---
|
|
256
358
|
|
|
359
|
+
## 常见问题 (FAQ)
|
|
360
|
+
|
|
361
|
+
**Q: `add page` 默认生成的代码不符合我的项目结构怎么办?**
|
|
362
|
+
|
|
363
|
+
A: Flu CLI 是为特定架构(MVVM + Provider)设计的。如果您使用完全自定义的架构,建议:
|
|
364
|
+
|
|
365
|
+
1. 使用 `--no-vm` 仅生成页面。
|
|
366
|
+
2. 或者,Fork 本项目并修改模板代码以适配您的团队规范。
|
|
367
|
+
3. 利用 VSCode 插件自带的代码片段 (Snippets) 快速编写代码,而不是依赖 CLI 生成。
|
|
368
|
+
|
|
369
|
+
**Q: 为什么生成的 Service 很简单?**
|
|
370
|
+
|
|
371
|
+
A: 我们移除了原来复杂的 Service 模板,只生成最基础的类结构。这样您可以自由选择使用 `http`, `dio` 还是其他网络库,而不受 CLI 预设逻辑的限制。
|
|
372
|
+
|
|
373
|
+
---
|
|
374
|
+
|
|
257
375
|
## 常见工作流
|
|
258
376
|
|
|
259
377
|
### 创建新项目
|
|
378
|
+
|
|
260
379
|
```bash
|
|
261
380
|
flu-cli new my_app
|
|
262
381
|
cd my_app
|
|
@@ -265,19 +384,56 @@ flu-cli add page home
|
|
|
265
384
|
flu-cli add page user_list --list-page
|
|
266
385
|
```
|
|
267
386
|
|
|
387
|
+
### 使用自定义模板创建项目
|
|
388
|
+
|
|
389
|
+
````bash
|
|
390
|
+
# 添加模板(本地或 Git)
|
|
391
|
+
flu-cli template add my-lite /path/to/my-template --local
|
|
392
|
+
# 或
|
|
393
|
+
flu-cli template add company-clean https://github.com/org/clean-template.git -b main
|
|
394
|
+
|
|
395
|
+
# 交互式选择自定义模板并创建
|
|
396
|
+
flu-cli new
|
|
397
|
+
|
|
398
|
+
# 初始化项目生成配置(让 VSCode/CLI 生成遵循你的路径约定)
|
|
399
|
+
flu-cli config init
|
|
400
|
+
|
|
401
|
+
### 基于配置快速生成页面/VM
|
|
402
|
+
```bash
|
|
403
|
+
# 初始化配置后:
|
|
404
|
+
flu-cli add page home # 路径/类型按 .flu-cli.json 生效
|
|
405
|
+
flu-cli add viewmodel home # VM 路径按配置生效
|
|
406
|
+
flu-cli add model user # Model 路径按配置生效
|
|
407
|
+
````
|
|
408
|
+
|
|
409
|
+
### 更新模板缓存与故障排除
|
|
410
|
+
|
|
411
|
+
```bash
|
|
412
|
+
# 更新缓存到最新
|
|
413
|
+
flu-cli update-templates [模板ID]
|
|
414
|
+
|
|
415
|
+
# 模板拉取失败或缓存异常
|
|
416
|
+
flu-cli cache clean
|
|
417
|
+
flu-cli new my_app --no-cache
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
````
|
|
421
|
+
|
|
268
422
|
### 在现有项目中使用
|
|
423
|
+
|
|
269
424
|
```bash
|
|
270
425
|
cd existing_project
|
|
271
426
|
|
|
272
|
-
#
|
|
273
|
-
flu-cli
|
|
427
|
+
# 初始化配置文件
|
|
428
|
+
flu-cli config init
|
|
274
429
|
|
|
275
430
|
# 添加组件
|
|
276
431
|
flu-cli add page settings
|
|
277
|
-
flu-cli add service api
|
|
278
|
-
|
|
432
|
+
flu-cli add service api
|
|
433
|
+
````
|
|
279
434
|
|
|
280
435
|
### Modular 架构项目
|
|
436
|
+
|
|
281
437
|
```bash
|
|
282
438
|
flu-cli new my_app -t modular
|
|
283
439
|
cd my_app
|
|
@@ -295,10 +451,12 @@ flu-cli add page profile -f user
|
|
|
295
451
|
## 全局选项
|
|
296
452
|
|
|
297
453
|
所有命令都支持以下选项:
|
|
298
|
-
|
|
299
|
-
-
|
|
454
|
+
|
|
455
|
+
- `-V, --version` - 查看版本号
|
|
456
|
+
- `-h, --help` - 查看帮助信息
|
|
300
457
|
|
|
301
458
|
**示例:**
|
|
459
|
+
|
|
302
460
|
```bash
|
|
303
461
|
flu-cli --version
|
|
304
462
|
flu-cli add --help
|
|
@@ -309,20 +467,24 @@ flu-cli add --help
|
|
|
309
467
|
## 配置文件
|
|
310
468
|
|
|
311
469
|
Flu-CLI 会在以下位置存储配置:
|
|
312
|
-
|
|
313
|
-
-
|
|
470
|
+
|
|
471
|
+
- **缓存目录**: `~/.flu-cli/cache/`
|
|
472
|
+
- **配置文件**: `~/.flu-cli/config.json`
|
|
314
473
|
|
|
315
474
|
---
|
|
316
475
|
|
|
317
476
|
## 故障排除
|
|
318
477
|
|
|
319
478
|
### 命令卡住
|
|
479
|
+
|
|
320
480
|
如果命令执行过程中卡住,可以:
|
|
481
|
+
|
|
321
482
|
1. 按 `Ctrl+C` 中止
|
|
322
483
|
2. 运行 `flu-cli cache clean` 清理缓存
|
|
323
484
|
3. 重新执行命令
|
|
324
485
|
|
|
325
486
|
### 模板拉取失败
|
|
487
|
+
|
|
326
488
|
```bash
|
|
327
489
|
# 清理缓存后重试
|
|
328
490
|
flu-cli cache clean
|
|
@@ -333,17 +495,18 @@ flu-cli new my_app --no-cache
|
|
|
333
495
|
```
|
|
334
496
|
|
|
335
497
|
### 代码片段不生效
|
|
336
|
-
```bash
|
|
337
|
-
# 重新同步代码片段
|
|
338
|
-
flu-cli sync-snippets
|
|
339
498
|
|
|
340
|
-
|
|
341
|
-
|
|
499
|
+
VSCode 扩展使用**动态代码片段**功能,会根据项目配置自动适配:
|
|
500
|
+
|
|
501
|
+
1. 确保已安装 Flu CLI VSCode 扩展
|
|
502
|
+
2. 打开 `.dart` 文件时扩展会自动激活
|
|
503
|
+
3. 代码片段会根据 `.flu-cli.json` 配置动态显示
|
|
504
|
+
4. 如果看不到代码片段,尝试重启 VSCode
|
|
342
505
|
|
|
343
506
|
---
|
|
344
507
|
|
|
345
508
|
## 更多帮助
|
|
346
509
|
|
|
347
|
-
-
|
|
348
|
-
-
|
|
349
|
-
-
|
|
510
|
+
- 查看具体命令帮助:`flu-cli <command> --help`
|
|
511
|
+
- 项目文档:[flu-cli 文档站](https://your-docs-url)
|
|
512
|
+
- 问题反馈:[GitHub Issues](https://github.com/your-repo/issues)
|
package/README.md
CHANGED
|
@@ -2,16 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
> 🚀 **活跃开发中** - Flutter MVVM 脚手架工具
|
|
4
4
|
|
|
5
|
+
> 💡 **推荐**: 使用 VSCode 开发?试试我们的 [VSCode 插件](https://marketplace.visualstudio.com/items?itemName=flu-cli.flu-cli-vscode),支持右键生成代码,体验更丝滑!
|
|
6
|
+
|
|
5
7
|
## ✨ 特性
|
|
6
8
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
9
|
+
- 🎯 **交互式创建** - `flu new` 命令提供友好的交互式体验
|
|
10
|
+
- 🔧 **代码生成** - `flu add` 快速生成页面、组件、服务等(支持别名)
|
|
11
|
+
- 📦 **多种模板** - lite、modular、clean 三种架构模板
|
|
12
|
+
- 🎮 **状态管理** - 支持 default、provider、getx、riverpod
|
|
13
|
+
- 📝 **基于 Snippets** - 可自定义 VSCode 代码片段
|
|
14
|
+
- 🎨 **列表页支持** - `--list-page` 自动生成 Page/ViewModel/Model
|
|
15
|
+
- 🚀 **智能补全** - Shell 自动补全(Zsh/Bash)
|
|
16
|
+
- 🌏 **中文友好** - 全中文提示和文档
|
|
15
17
|
|
|
16
18
|
## 📦 安装
|
|
17
19
|
|
|
@@ -52,35 +54,60 @@ flu-cli completion >> ~/.zshrc && source ~/.zshrc
|
|
|
52
54
|
## 📚 命令别名
|
|
53
55
|
|
|
54
56
|
### add 类型别名
|
|
55
|
-
|
|
56
|
-
-
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
57
|
+
|
|
58
|
+
- `p` = page
|
|
59
|
+
- `w` = widget
|
|
60
|
+
- `c` = component
|
|
61
|
+
- `v` = viewmodel
|
|
62
|
+
- `s` = service
|
|
63
|
+
- `m` = model
|
|
64
|
+
- `mod` = module
|
|
62
65
|
|
|
63
66
|
### 顶级命令别名
|
|
64
|
-
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
71
|
-
-
|
|
67
|
+
|
|
68
|
+
- `n` = new
|
|
69
|
+
- `a` = add
|
|
70
|
+
- `t` = templates
|
|
71
|
+
- `u` = update-templates
|
|
72
|
+
- `c` = cache
|
|
73
|
+
- `sync` = sync-snippets
|
|
74
|
+
- `comp` = completion
|
|
75
|
+
|
|
76
|
+
## ❓ 获取帮助
|
|
77
|
+
|
|
78
|
+
查看所有命令:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
flu-cli --help
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
查看特定命令的详细用法:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
flu add --help
|
|
88
|
+
flu new --help
|
|
89
|
+
```
|
|
72
90
|
|
|
73
91
|
## 📚 文档
|
|
74
92
|
|
|
75
|
-
-
|
|
76
|
-
-
|
|
93
|
+
- [CLI 命令参考](http://huozhiye.cn/flu-cli/reference/cli-reference.html) - 详细命令说明
|
|
94
|
+
- [完整文档](http://huozhiye.cn/flu-cli/) - 主文档站
|
|
95
|
+
|
|
96
|
+
## 💬 加入社区
|
|
97
|
+
|
|
98
|
+
获取最新动态、反馈问题、定制化开发或与开发者直接交流,欢迎加入我们的微信群:
|
|
99
|
+
|
|
100
|
+
> 
|
|
101
|
+
|
|
102
|
+
如果群二维码过期,请添加作者微信 `Huoye-TT` 备注 "flu-cli" 拉您入群。
|
|
77
103
|
|
|
78
104
|
## 🔗 相关链接
|
|
79
105
|
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
106
|
+
- [模板对比](http://huozhiye.cn/flu-cli/guide/templates/template-comparison.html)
|
|
107
|
+
- [最佳实践](http://huozhiye.cn/flu-cli/best-practices/custom-templates.html)
|
|
108
|
+
- [从 V1 迁移](http://huozhiye.cn/flu-cli/examples/migration.html)
|
|
83
109
|
|
|
110
|
+
|
|
84
111
|
## 📄 许可
|
|
85
112
|
|
|
86
|
-
MIT License - Copyright © 2025
|
|
113
|
+
MIT License - Copyright © 2025 火叶工作室
|