SuperAPI AI 工具集

golang-web

编程与开发

查看项目

更新于 10-16 00:04

技能介绍

用途:面向新建 Go Web 项目、API 或微服务,给出可落实的工程化架构约定,包括项目布局、依赖组织、分层方式与基础设施接入。

主要能力:采用 cmd/internal/pkg 标准布局;在 main.go 显式装配依赖、避免全局变量;接口定义在使用处;错误使用包装并配合错误码;主张删除不再使用的代码、不做向后兼容层。技术栈推荐 HTTP 框架 Gin/Chi/Echo,配置 Viper,日志 Logrus/Zap/Slog,数据库 GORM/sqlx/sqlc,校验 go-playground/validator,测试 testify/go test。分层为 handlers→services→repositories,pkg 下放置 errors、logger、response、database 等可复用包,并给出统一响应与 AppError 错误类型示例。配置以 Viper 读取 YAML 与环境变量,支持默认值;服务提供 graceful shutdown,通过信号监听与 Context 超时关闭。Makefile 提供 build、run、dev、test、lint、clean、tidy、upgrade 目标。

使用方式:初始化项目可执行 mkdir myapp && cd myapp、go mod init github.com/yourname/myapp,再安装核心依赖,例如 go get github.com/gin-gonic/gin、go get github.com/spf13/viper、go get github.com/sirupsen/logrus、go get gorm.io/gorm;升级依赖用 go get -u ./... 后执行 go mod tidy。涉及 LLM 调用时建议通过 LiteLLM 代理并使用 OpenAI 兼容 SDK 连接。

适用场景与限制:适合采用分层架构与显式依赖的 Go Web/API/微服务项目。资料未提供具体版本约束、许可、性能数据、收费信息及完整部署说明;部分示例代码较长,实际项目需结合自身基础设施调整。