/Temple-go-web-project

A go web project include redis mysql kafka config gin/hertz middleware jwt docker etc.

Primary LanguageGo

Temple-Go-Web-Project(TGWP)

TGWP是一个轻量级GOLang网络框架脚手架,旨在专注业务代码开发,免去重复逻辑书写

快速开始

  1. 前置条件
go 1.22+
  1. Fork本仓库到自己指定项目仓库名

  2. 修改 go.mod 文件中 module tgwp为自己的项目名称

  3. 使用全局替换 将 tgwp 替换为刚刚修改的字段

  4. config.yaml.template更改为config.yaml并且填写相关配置

  5. 安装相关依赖

go mod tidy
go mod install
  1. 编写业务代码

目录结构

├── README.md
├── cmd       程序入口
├── configs   存放配置实体类
├── db        存放数据库相关
├── global    存放全局变量和常量
├── initalize 程序初始化文件
├── internal  核心业务代码
├── log       log文件配置
├── pkg       第三方通用包
├── test      测试文件
├── utils     工具类
├── config.yaml.template 配置文件
├── go.mod
└── go.sum

目前集成的功能

  1. 数据库链接(使用gorm)
  2. Redis链接(使用go-redis/v8)
  3. 日志系统(使用zap实现 日志分割 日志轮转)

待开发功能

  • hertz gin fiber 相关基建逻辑(@Dbinggo )
  • kafka rocketmq rabbitmq (nobody)
  • 第三方工具类扩展
  • 优化目录结构
  • log扩展优化 使用接口实现 用logrus实现接口(@Dbinggo )
  • 中间件开发