# flu-cli-v1 **Repository Path**: tengteng_fan/flu-cli-v1 ## Basic Information - **Project Name**: flu-cli-v1 - **Description**: FluCli 是由火之夜工作室开发的强大Flutter项目脚手架工具,旨在简化Flutter项目的创建和配置过程。它提供了从极简原型到企业级应用的全场景解决方案。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: dev - **Homepage**: http://huozhiye.cn/flu-cli/ - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2025-04-27 - **Last Updated**: 2026-03-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Flu CLI 工具 > **flu-cli** 是一个强大的 Flutter 项目脚手架工具,可以帮助您快速创建和配置项目。 [![npm version](https://img.shields.io/npm/v/flu-cli.svg)](https://www.npmjs.com/package/flu-cli) [![license](https://img.shields.io/npm/l/flu-cli.svg)](https://gitee.com/tengteng_fan/flutter-cli/blob/main/LICENSE) [![downloads](https://img.shields.io/npm/dm/flu-cli.svg)](https://www.npmjs.com/package/flu-cli) ## 📋 目录 - [🚀 快速开始](#-快速开始) - [📦 安装](#-安装) - [🛠️ 使用方法](#️-使用方法) - [交互式向导](#交互式向导) - [项目模版对比](#项目模版对比) - [命令行创建](#命令行创建) - [📁 项目结构](#-项目结构) - [🏃 运行与调试](#-运行与调试) - [📚 进阶指南](#-进阶指南) - [🔧 兼容性说明](#-兼容性说明) ## 🚀 快速开始 ```bash # 全局安装 npm install -g flu-cli # 创建项目 flu-cli # 或使用 npx(无需安装) npx flu-cli ``` ## 📦 安装 您可以通过以下方式安装 flu-cli: | 安装方式 | NPM | PNPM | Yarn | | -------------- | ------------------------ | --------------------- | ------------------------- | | **全局安装** | `npm install -g flu-cli` | `pnpm add -g flu-cli` | `yarn global add flu-cli` | | **项目内安装** | `npm install flu-cli` | `pnpm add flu-cli` | `yarn add flu-cli` | > 💡 **推荐使用全局安装**,这样可以在任何地方使用 `flu-cli` 命令。 ## 🛠️ 使用方法 ### 交互式向导 flu-cli 附带一个命令行设置向导,它将帮助您构建一个基本项目。安装后,您可以通过运行以下命令启动向导: ```bash # 如果全局安装 flu-cli # 或者使用 npx npx flu-cli ``` 运行向导后,根据提示输入项目信息,如项目名称、包名、项目类型、模板类型、状态管理方案等。向导会自动生成项目结构并配置相关文件。
📋 向导示例(点击展开) ```bash 欢迎使用 火之夜工作室 Flutter 项目创建工具 ? 请选择项目类型: (Use arrow keys) ❯ 应用 (app) 模块 (module) 原生插件 (plugin) 插件 (package) ? 请选择项目模版: (Use arrow keys) only (main.dart) min (项目结构、路由管理、主题管理、状态管理、工具集) normal (项目结构、路由管理、主题管理、状态管理、工具集、UI 组件库) ❯ pro (项目结构、路由管理、主题管理、状态管理、工具集、UI 组件库、网络请求、数据缓存、示例模块) ? 请选择状态管理: (Use arrow keys) ❯ state (State) get (GetX) ? 请输入新项目名称(小写字母、数字和下划线): (hzy_example_project) ? 请输入 Flutter SDK 路径(留空使用系统默认): ? 请输入包名: (com.example.hzy_example_project) ? 请输入项目存放路径: (默认: 当前目录) ⚠️ 警告: 目标目录 hzy_example_project 已存在! ? 是否覆盖? (y/N) ? 请选择要打开项目的 IDE: (Use arrow keys) ❯ Visual Studio Code Android Studio 打开文件夹 不打开 ```
### 项目模版对比 | 功能特性 | 🔹 only | 🔸 min | 🔶 normal | 🔥 pro | | :----------------------- | :-----: | :----: | :-------: | :----: | | **基础入口 (main.dart)** | ✅ | ✅ | ✅ | ✅ | | **标准项目结构** | ❌ | ✅ | ✅ | ✅ | | **路由管理系统** | ❌ | ✅ | ✅ | ✅ | | **主题管理系统** | ❌ | ✅ | ✅ | ✅ | | **状态管理方案** | ❌ | ✅ | ✅ | ✅ | | **开发工具集** | ❌ | ✅ | ✅ | ✅ | | **UI 组件库** | ❌ | ❌ | ✅ | ✅ | | **网络请求框架** | ❌ | ❌ | ❌ | ✅ | | **数据持久化** | ❌ | ❌ | ❌ | ✅ | #### 模版说明 - 🔹 **only**:仅保留最小运行单元(适合验证核心功能) - 🔸 **min**:三大基石(路由/主题/状态管理) - 🔶 **normal**:增加 UI 组件库(提升开发效率) - 🔥 **pro**:完整解决方案(含网络层+数据持久化) > 📖 想了解更多项目模版区别,请查看 [项目模版详细说明](http://huozhiye.cn/flu-cli/guide/project-template.html)。 ### 命令行创建 可以直接通过命令行参数指定所有配置,无需交互式输入: #### 基本语法 ```bash flu-cli create [options] ``` #### 使用示例 ##### 🔥 Pro 模版(推荐) ```bash flu-cli create -t app -m pro -s GetX -n my_flutter_app -p com.example.myapp -d ~/projects -i vscode ``` ##### 🔶 Normal 模版 ```bash flu-cli create -t module -m normal -s state -n my_flutter_module -p com.example.mymodule -d ~/projects -i android_studio ``` ##### 🔸 Min 模版 ```bash flu-cli create -t app -m min -n quick_start -p com.example.quick -d ~/projects ``` ##### 🔹 Only 模版 ```bash flu-cli create -t app -m only -n quick_start -p com.example.quick -d ~/projects ``` ##### 默认配置(使用向导) ```bash flu-cli create ``` #### 参数说明 | 参数 | 说明 | 可选值 | 必选 | 示例 | | :-------------------- | :--------------- | :-------------------------------------------------- | :--- | :--------------------- | | `-t, --project-type` | 项目类型 | `app`, `module`, `package`, `plugin` | ✅ | `-t app` | | `-m, --template-type` | 模板类型 | `only`, `min`, `normal`, `pro` | ✅ | `-m pro` | | `-s, --state-manager` | 状态管理方案 | `state`, `GetX`, `Riverpod` | ❌ | `-s GetX` | | `-n, --project-name` | 项目名称 | 小写字母、数字和下划线组合 | ✅ | `-n my_app` | | `-p, --package-name` | 包名 | 类似 Java 包名格式 | ✅ | `-p com.example.myapp` | | `-d, --parent-dir` | 存放目录 | 绝对路径或相对路径 | ❌ | `-d ~/projects` | | `-i, --ide` | IDE 选择 | `vscode`, `android_studio`, `open_folder`, `manual` | ❌ | `-i vscode` | | `-f, --flutter-sdk` | Flutter SDK 路径 | 默认为系统环境变量中的 flutter | ❌ | `-f /path/to/flutter` | | `-h, --help` | 显示帮助信息 | - | ❌ | `--help` | > 📚 有关更多命令行用法的文档,请参阅 [CLI 参考文档](http://huozhiye.cn/flu-cli/eg/cli-des.html)。 ## 📁 项目结构 以下是基于 **GetX** 的完整商业项目结构,清晰的项目结构有助于团队协作和代码维护。 ``` 📦 your_project_name/ ├── 📁 .vscode/ # VS Code 配置文件 │ ├── 📄 extensions.json # 插件推荐 │ ├── 📄 launch.json # 调试配置 │ ├── 📄 settings.json # 编辑器设置 │ └── 📄 dart.code-snippets # 代码片段 ├── 📁 assets/ # 静态资源文件 │ ├── 📁 fonts/ # 字体文件 │ ├── 📁 images/ # 图片资源 │ └── 📁 json/ # 本地数据 ├── 📁 lib/ # 项目核心代码 │ ├── 📁 common/ # 公共组件和工具 │ ├── 📁 config/ # 应用配置 │ ├── 📁 eg_module/ # 示例模块 │ ├── 📁 init/ # 初始化逻辑 │ ├── 📄 main.dart # 应用入口文件 │ ├── 📁 models/ # 数据模型 │ ├── 📁 network/ # 网络请求 │ ├── 📁 pages/ # 页面文件 │ ├── 📁 tools/ # 工具类 │ ├── 📁 vm/ # 视图模型 │ └── 📁 widgets/ # UI 组件 ├── 📄 pubspec.yaml # 项目配置文件 ├── 📄 analysis_options.yaml # 代码分析配置 └── 📄 README.md # 项目说明文档 ``` ### 📋 目录说明 | 目录/文件 | 说明 | 用途 | | ----------------- | ------------ | ---------------------------------- | | 📁 `.vscode/` | VS Code 配置 | 包含编辑器配置、调试设置和代码片段 | | 📁 `assets/` | 静态资源 | 存放图片、字体、本地数据等资源文件 | | 📁 `lib/common/` | 公共模块 | 公共组件、工具类、常量定义 | | 📁 `lib/config/` | 应用配置 | 环境配置、主题配置、路由配置 | | 📁 `lib/network/` | 网络层 | HTTP 请求、API 接口、数据处理 | | 📁 `lib/pages/` | 页面 | 应用的各个页面和子页面 | | 📁 `lib/widgets/` | UI 组件 | 可复用的自定义 Widget 组件 | | 📁 `lib/models/` | 数据模型 | 实体类、数据传输对象 | | 📁 `lib/vm/` | 视图模型 | 状态管理、业务逻辑处理 | ## 🏃 运行与调试 ### 基本运行步骤 ```bash # 1. 进入项目目录 cd /your_project_path/your_project_name # 2. 获取依赖包 flutter pub get # 3. 运行项目(开发模式) flutter run # 4. 构建发布版本 flutter build apk # Android flutter build ios # iOS ``` ### 🛠️ 开发工具推荐 | 工具 | 用途 | 推荐指数 | | ------------------------ | -------------- | ---------- | | 🔧 **VS Code** | 轻量级编辑器 | ⭐⭐⭐⭐⭐ | | 🔧 **Android Studio** | 功能完整的 IDE | ⭐⭐⭐⭐ | | 🔧 **Flutter Inspector** | UI 调试工具 | ⭐⭐⭐⭐⭐ | | 🔧 **Dart DevTools** | 性能分析工具 | ⭐⭐⭐⭐ | ## 📚 进阶指南 🎉 恭喜您完成了 `flu-cli` 的基础配置! ### 🚀 推荐后续操作 - 📖 **深入学习**:查看 [高级特性文档](http://huozhiye.cn/flu-cli/tutorial/base-normal-ui.html) - 🤝 **项目模版**:访问 [仓库](https://gitee.com/tengteng_fan/hzy_basic_project) - 📚 **官方文档**:[flu-cli 完整文档](http://huozhiye.cn/flu-cli/) - 💬 **社区支持**:加入开发者交流群 ### 📖 相关资源 - [Flutter 官方文档](https://flutter.dev/docs) - [GetX 状态管理](https://github.com/jonataslaw/getx) - [Dart 语言指南](https://dart.dev/guides) --- ## 🔧 兼容性说明 ### 系统要求 | 环境 | 最低版本 | 推荐版本 | 状态 | | --------------- | ------------- | ------------- | ------- | | 🐦 **Flutter** | 3.0.0+ | 3.16.0+ | ✅ 支持 | | 🟢 **Node.js** | 14.0.0+ | 18.0.0+ | ✅ 支持 | | 🖥️ **操作系统** | - | - | - | | └─ Windows | 10+ | 11 | ✅ 支持 | | └─ macOS | 10.14+ | 13.0+ | ✅ 支持 | | └─ Linux | Ubuntu 18.04+ | Ubuntu 22.04+ | ✅ 支持 | ### 📱 目标平台 - ✅ **Android** 5.0+ (API 21+) - ✅ **iOS** 11.0+ - ✅ **Web** (Chrome, Safari, Firefox) - ✅ **Desktop** (Windows, macOS, Linux) ---
**🎉 祝您使用 `flu-cli` 开发愉快!** [![Gitee Stars](https://gitee.com/tengteng_fan/flutter-cli/badge/star.svg?theme=dark)](https://gitee.com/tengteng_fan/flutter-cli) [![Gitee Forks](https://gitee.com/tengteng_fan/flutter-cli/badge/fork.svg?theme=dark)](https://gitee.com/tengteng_fan/flutter-cli)