Nunu 是一个基于 Golang 的应用脚手架,它的名字来自于英雄联盟中的游戏角色,一个骑在雪怪肩膀上的小男孩。和努努一样,该项目也是站在巨人的肩膀上,它是由 Golang 生态中各种非常流行的库整合而成的,它们的组合可以帮助你快速构建一个高效、可靠的应用程序。
Nunu 采用了多种流行的库,包括 Gin、Gorm、Wire、Viper、Zap、Golang-jwt、Go-redis、Testify、Sonyflake、robfig-cron 等等。这些库的组合可以帮助你快速构建一个高效、可靠的应用程序。
Nunu 具有以下特性:
Nunu 采用了经典的分层架构。同时,为了更好地实现模块化和解耦,采用了依赖注入框架 Wire。
Nunu 提供了全面的文档和示例,帮助你快速入门。它还包括一套测试套件,确保你的应用程序按预期工作。
要使用 Nunu,你需要在系统上安装以下软件:
你可以通过一行命令安装 Nunu:
go install github.com/go-nunu/nunu@latest
你可以使用以下命令创建一个新的 Golang 项目:
nunu new projectName
// or
nunu new projectName -r https://github.com/go-nunu/nunu-layout-advanced.git
效果预览:
此命令将创建一个名为 projectName 的目录,并在其中生成一个优雅的 Golang 项目结构。
.
├── cmd
│ └── server
│ ├── main.go
│ ├── wire.go
│ └── wire_gen.go
├── config
│ ├── local.yml
│ └── prod.yml
├── internal
│ ├── handler
│ │ ├── handler.go
│ │ └── user.go
│ ├── middleware
│ │ └── cors.go
│ ├── model
│ │ └── user.go
│ ├── repository
│ │ ├── repository.go
│ │ └── user.go
│ ├── server
│ │ └── http.go
│ └── service
│ ├── service.go
│ └── user.go
├── pkg
├── LICENSE
├── README.md
├── README_zh.md
├── go.mod
└── go.sum
这是一个经典的Golang 项目的目录结构,包含以下目录:
你可以使用以下命令为项目创建 handler、service 和 repository 等组件:
nunu create handler user
nunu create service user
nunu create repository user
nunu create model user
这些命令将分别创建一个名为 UserHandler、UserService、UserRepository 和 UserModel 的组件,并将它们放置在正确的目录中。
你可以使用以下命令快速启动项目:
nunu run
此命令将启动你的 Golang 项目,并支持文件更新热重启。
你可以使用以下命令快速编译 wire.go:
nunu wire
此命令将编译你的 wire.go 文件,并生成所需的依赖项。
如果你发现任何问题或有任何改进意见,请随时提出问题或提交拉取请求。非常欢迎你的贡献!
Nunu 是根据 MIT 许可证发布的。有关更多信息,请参见 LICENSE 文件。
总之,Nunu 是一个非常优秀的 Golang 应用脚手架,它可以帮助你快速构建高效、可靠的应用程序。如果你正在寻找一个优秀的 Golang 应用脚手架,那么 Nunu 绝对是你的不二选择!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。