Skip to content

Gin

项目介绍

youlai-ginvue3-element-admin 的 Go 后端实现,基于 Gin + GORM,采用 RBAC 权限模型,集成 JWT / Redis,用于企业级前后端分离权限管理系统。

一句话定位:如果你需要一个"开箱即用"的 Go 权限中后台后端(认证、鉴权、数据权限、代码生成等能力齐全),选它。

核心能力

  • RBAC 权限模型(用户/角色/菜单/按钮权限)
  • 登录认证与会话管理(JWT / Redis Token)
  • 接口鉴权(权限点校验 + 前后端联动)
  • 数据权限(按角色数据范围进行 SQL 自动注入过滤)
  • 代码生成(从表结构快速生成 CRUD 骨架)
  • 文件上传(可选对象存储)
  • 定时任务(当前未内置)
  • 实时通信(SSE)

技术栈

基于仓库配置(go.mod / configs/*.yaml):

分类技术选型说明
运行时Go 1.25+推荐使用 LTS 版本
Web 框架Gin v1.11.0轻量高性能 Web 框架
数据访问GORM v1.31.1Go ORM 库
数据库MySQL 5.7 ~ 8.x推荐 8.x
缓存Redis 7.x会话与缓存
认证JWT v5.2.1无状态认证
API 文档Swagger/swagger/index.html
对象存储本地 / 阿里云 OSS(可选)需自行初始化存储实例

目录结构

核心目录概览(详见 快速开始):

text
youlai-gin/
  configs/                 # 多环境配置
  internal/                # 业务源码
    auth/                  # 认证模块
    codegen/               # 代码生成模块
    common/                # 公共模块(数据库/Redis/权限/日志/工具等)
    file/                  # 文件管理模块
    message/               # SSE 实时通信
    middleware/            # 中间件(JWT/CORS/限流等)
    router/                # 路由注册
    system/                # 系统模块(用户/角色/菜单/部门/字典/通知/日志)
  pkg/                     # 公共库
    constant/              # 常量定义
    enums/                 # 枚举类型
    errs/                  # 统一错误类型
    model/                 # 通用模型(分页/选项/实体)
    types/                 # 自定义类型(BigInt/LocalTime)
  sql/                     # 初始化脚本
  main.go                  # 入口文件

必需服务

  • MySQL
  • Redis

快速入口

文档导航

展开完整文档目录

基于 MIT 许可发布 · 由 ❤️ 和 ☕ 驱动 · 支持作者