ljy-node-cli
v1.0.0
Published
快速搭建本地或远程模板项目的命令行工具
Downloads
97
Readme
Node CLI 项目模板生成器
一个功能强大的 Node.js CLI 工具,用于从本地或远程模板创建项目。
功能特性
- ✅ 从本地模板创建项目
- ✅ 从远程模板创建项目(Vue2/Vue3/React)
- ✅ 交互式模板选择
- ✅ 目录存在检查和覆盖处理
- ✅ 模块化、可扩展的架构
项目结构
my-node-cli/
├── bin/
│ └── cli.js # CLI入口文件
├── lib/
│ ├── index.js # 主入口文件
│ ├── create.js # 主创建逻辑
│ ├── http.js # HTTP请求工具
│ ├── utils/
│ │ └── helpers.js # 工具函数
│ └── templates/
│ ├── TemplateSelector.js # 模板选择器
│ ├── LocalTemplateCreator.js # 本地模板创建器
│ └── RemoteTemplateGenerator.js # 远程模板生成器
├── local-templates/ # 本地模板目录
│ ├── template-one/
│ │ └── hello.js
│ └── template-two/
│ ├── index.html
│ └── common.css
└── package.json核心模块说明
1. CLI 入口 (bin/cli.js)
- 使用 Commander.js 构建命令行界面
- 配置 create、config、ui 等命令
- 处理命令行参数和选项
2. 主创建逻辑 (lib/create.js)
ProjectCreator类:协调整个创建流程- 处理目录检查和模板类型选择
- 调用相应的模板创建器
3. 模板选择器 (lib/templates/TemplateSelector.js)
- 提供交互式模板类型选择
- 动态加载本地模板列表
- 支持本地和远程模板选择
4. 本地模板创建器 (lib/templates/LocalTemplateCreator.js)
- 从 local-templates 目录复制模板文件
- 处理本地模板的创建逻辑
5. 远程模板生成器 (lib/templates/RemoteTemplateGenerator.js)
- 下载远程 Git 仓库模板
- 支持 Vue2、Vue3、React 等流行框架
- 包含加载动画和错误处理
6. 工具函数 (lib/utils/helpers.js)
- 获取本地模板列表
- 处理目录存在检查和覆盖逻辑
使用方法
创建新项目
my-node-cli create <project-name>添加本地模板
在local-templates/目录下创建新的模板文件夹:
local-templates/
└── my-template/
├── package.json
├── src/
│ └── index.js
└── README.md依赖项
commander- 命令行界面inquirer- 交互式命令行提示download-git-repo- Git 仓库下载ora- 加载动画fs-extra- 增强的文件系统操作chalk- 终端颜色输出figlet- ASCII 艺术字
开发说明
项目采用模块化设计,易于扩展和维护。每个功能模块都有清晰的职责分离,便于添加新的模板类型或功能。
