Kindness CLI
Laravel 风格的 Kindness 框架脚手架工具。
安装
方法 1:使用 Makefile(推荐)
cd cmd/kindness-cli
make install
方法 2:手动构建
cd cmd/kindness-cli
go build -o ~/go/bin/kindness main.go scaffold.go make_commands.go
验证安装
kindness version
# 输出: Kindness CLI v1.0.0
注意:确保 ~/go/bin 在你的 PATH 环境变量中
使用方法
1. 创建新项目
kindness new my-app
这将创建一个完整的 Laravel 风格项目结构:
my-app/
├── app/
│ ├── controllers/ # 控制器
│ ├── models/ # 模型
│ ├── middleware/ # 中间件
│ ├── requests/ # 请求验证
│ ├── services/ # 服务层
│ └── repositories/ # 仓储层
├── bootstrap/ # 应用启动
├── config/ # 配置文件
├── database/
│ ├── migrations/ # 数据库迁移
│ └── seeders/ # 数据填充
├── public/ # 公共资源
├── resources/
│ ├── views/ # 视图模板
│ └── lang/ # 语言文件
├── routes/ # 路由定义
│ ├── web.go # Web 路由
│ └── api.go # API 路由
├── storage/ # 存储目录
│ ├── app/
│ ├── framework/
│ └── logs/
├── tests/ # 测试
│ ├── unit/
│ └── feature/
├── main.go # 应用入口
├── .env # 环境变量
├── .gitignore
├── Makefile
└── README.md
2. 生成代码
进入项目目录后,可以使用 make 命令生成各种代码:
生成控制器
kindness make controller User
# 创建: app/controllers/user_controller.go
生成模型
kindness make model Post
# 创建: app/models/post.go
生成中间件
kindness make middleware Admin
# 创建: app/middleware/admin_middleware.go
生成服务层
kindness make service User
# 创建: app/services/user_service.go
生成请求验证
kindness make request CreateUser
# 创建: app/requests/create_user_request.go
生成数据库迁移
kindness make migration create_users_table
# 创建: database/migrations/20240118150405_create_users_table.go
3. 查看版本
kindness version
完整示例
# 1. 创建新项目
kindness new blog
# 2. 进入项目目录
cd blog
# 3. 安装依赖
go mod tidy
# 4. 生成代码
kindness make controller Post
kindness make model Post
kindness make service Post
kindness make request CreatePost
kindness make migration create_posts_table
# 5. 运行项目
go run main.go
# 或使用 Makefile
make run
项目快速启动步骤
创建项目后,按以下步骤启动:
# 1. 进入项目
cd my-app
# 2. 安装依赖
go mod tidy
# 3. 配置数据库
# 编辑 config/app.json 或 .env 文件
# 4. 运行迁移(如果有)
# go run database/migrate.go
# 5. 启动服务器
go run main.go
应用将在 http://localhost:8080 运行。
特性
- ✅ Laravel 风格的目录结构
- ✅ 自动生成完整项目骨架
- ✅ RESTful 控制器模板
- ✅ 数据验证支持
- ✅ 服务层/仓储层模式
- ✅ 中间件管道
- ✅ 配置管理
- ✅ 数据库迁移
- ✅ 环境变量支持
常见问题
1. 命令找不到?
确保 ~/go/bin 在你的 PATH 中:
echo $PATH | grep go/bin
如果没有,根据你的 Shell 类型添加:
对于 zsh(macOS Catalina 及以后默认):
echo 'export PATH=$PATH:~/go/bin' >> ~/.zshrc
source ~/.zshrc
对于 bash:
echo 'export PATH=$PATH:~/go/bin' >> ~/.bash_profile
source ~/.bash_profile
验证:
which kindness
# 应该输出: /Users/你的用户名/go/bin/kindness
2. 生成的项目无法运行?
生成的项目依赖 Kindness 框架,需要先配置模块替换:
cd your-project
go mod edit -replace github.com/kindness8023/kindness=/path/to/kindness
go mod tidy
或者等待框架发布到 GitHub 后直接使用。
3. 更新 CLI 工具
cd /path/to/kindness/cmd/kindness-cli
make install
License
MIT