ByteNoteByteNote

字节笔记本

2026年2月19日

GinSkeleton:基于 Gin 的 Go Web 项目骨架

本文介绍 GinSkeleton,一个基于 Go 语言 Gin 框架封装的 Web 项目骨架,提供前后端分离的完整解决方案。

GinSkeleton 简介

GinSkeleton 是由 qifengzhang007 开发的开源项目,是一个基于 Go 语言 Gin 框架封装的 Web 项目骨架。它提供了前后端分离的完整功能,以 tb_users 表为核心,包括接口参数验证器、注册、登录获取 token、刷新 token、CURD 以及 token 鉴权等功能。该项目在 GitHub 上拥有 964 stars 和 145 forks,采用 MIT 许可证。

核心定位:基于 go 语言 gin 框架封装的 web 项目骨架

设计理念

将 web 项目主线逻辑梳理清晰,最基础的东西封装完善,开发者更多关注属于自己的的业务即可

基本信息

技术栈

类别技术
后端框架Gin (Go)
ORMGORM v2(支持读写分离)
数据库MySQL
架构容器化路由加载

环境要求

  • Go >= 1.15(从 V1.4.00 开始)
  • MySQL

核心功能

tb_users 表为核心的完整功能:

  • 接口参数验证器:请求参数自动验证
  • 用户注册:完整的注册流程
  • 登录获取 token:JWT token 认证
  • 刷新 token:token 自动刷新机制
  • CURD 操作:完整的增删改查
  • token 鉴权:基于 token 的权限验证

项目结构

text
GinSkeleton/
├── app/              # 应用代码
├── bootstrap/        # 启动引导
├── cmd/              # 命令入口
├── command/          # 命令相关
├── config/           # 配置文件
├── database/         # 数据库相关
├── docs/             # 文档
├── public/           # 静态资源
├── routers/          # 路由定义
├── storage/          # 存储
└── test/             # 测试

快速开始

1. 克隆仓库

bash
git clone https://github.com/qifengzhang007/GinSkeleton.git
cd GinSkeleton

2. 安装依赖

bash
go mod download

3. 配置数据库

修改 config/config.yaml 中的数据库连接信息。

4. 运行服务

bash
go run main.go

版本历史

  • 最新版本:V 1.5.67(2025-06-01)
  • 提交记录:1,133 commits

相关项目

  • GinSkeleton-Admin2:集成界面的 Admin 系统,快速开发业务

适用场景

  • 企业级后台管理系统
  • RESTful API 服务
  • 微服务基础骨架
  • 快速原型开发

总结

GinSkeleton 是一个成熟的 Go Web 项目骨架,其优势包括:

  • 主线清晰:项目结构清晰,逻辑明确
  • 基础完善:底层功能封装完善
  • 专注业务:开发者只需关注业务逻辑
  • 文档齐全:提供详细的在线文档
  • 社区活跃:QQ 群支持,问题及时解答

对于需要快速搭建 Go Web 项目的开发者来说,这是一个很好的起点。

分享: