# 1.5 技术栈说明 :::tip 概述 本项目以后端 GoFrame v2 + 前端 Vue3/Element Plus 为核心,全部依赖选型遵循"主流、稳定、长期维护"原则。本页给出完整的技术栈清单与关键依赖版本。 ::: ## 后端技术栈 | 技术 | 版本 | 用途 | |------|------|------| | Go | 1.27.2 | 语言运行时(go.mod 声明) | | GoFrame (gf/v2) | v2.10.3 | 核心框架(ghttp/gdb/gcfg/gcache/gcron/gconv…) | | gf mysql 驱动 | v2.10.3 | MySQL 支持(contrib/drivers/mysql) | | gf pgsql 驱动 | v2.10.3 | PostgreSQL 支持 | | gf mssql 驱动 | v2.10.3 | SQL Server 支持 | | gf oracle 驱动 | v2.10.3 | Oracle 支持 | | gf sqlite 驱动 | v2.10.3 | SQLite 支持 | | gf redis 适配 | v2.10.3 | Redis 支持(nosql/redis + go-redis/v9) | | golang-jwt | v5.3.1 | JWT 双令牌签发与校验(HS256) | | golang.org/x/crypto | v0.58.0 | bcrypt 密码哈希 | | xuri/excelize | v2.11.0 | Excel 导入导出 | | lionsoul2014/ip2region | xdb | IP 归属地解析 | | golang.org/x/image | v0.38.0 | 验证码图片渲染 | ## 前端技术栈 | 技术 | 版本 | 用途 | |------|------|------| | Vue | ^3.4.27 | 核心框架(Composition API) | | TypeScript | ^5.x | 类型系统 | | Vite | ^5.x | 构建工具(多环境模式) | | Element Plus | ^2.7.4 | UI 组件库 | | Pinia | ^2.1.7 | 状态管理 | | Vue Router | ^4.3.2 | 路由(常量路由 + 动态菜单路由) | | axios | ^0.27.2 | HTTP 客户端(封装于 utils/http) | | echarts | ^5.5.0 | 数据可视化 | | tinymce | 5.10.3 | 富文本编辑器 | | @vueup/vue-quill | 1.0.0-beta.8 | 富文本编辑器(Quill) | | xlsx | ^0.18.5 | 前端 Excel 导入导出 | | cropperjs / vue-cropper | ^1.6.2 / 0.5.8 | 图片裁剪(头像上传) | | dayjs | ^1.11.11 | 日期处理 | | lodash-es | ^4.17.21 | 工具函数 | | vuedraggable | ^4.1.0 | 拖拽排序(菜单管理) | | qrcode | ^1.5.3 | 二维码(扫码登录形态) | | mockjs | ^1.1.0 | 本地 Mock | ## 数据与中间件 | 组件 | 要求 | 说明 | |------|------|------| | MySQL | 5.7+ / 8.x | 规范基准数据库(document/mysql/ 定稿脚本) | | PostgreSQL | 12+ | document/postgresql/ 定稿脚本,整库迁移实测 | | SQL Server | 2012+ | document/sqlserver/ 定稿脚本,整库迁移实测 | | Oracle | 11g+ | document/oracle/ 定稿脚本,迁移器按定稿约定实现 | | SQLite | 3.x | document/sqlite/ 定稿脚本,整库迁移实测(开发/单机场景) | | Redis | 6.x+ | 缓存(不可用时自动降级进程内存,功能退化单机语义) | ## 架构模式一览 ```text 后端: 分层架构 + 声明式基座 + 全局钩子横切 + gmeta 反射注解 前端: 组合式 API + 动态路由 + 指令级权限 + querySchemas 声明式筛选 通信: RESTful JSON + JWT Bearer + 统一响应信封 (公开路由例外:/api/login、/api/captcha、/api/oauth2/token、/api/health 不带版本段) ``` ## 版本升级注意 :::warning 版本约束 + go.mod 声明 `go 1.27.2`,构建环境 Go 版本过低会直接编译失败。 + GoFrame 五驱动版本必须与框架核心一致(同为 v2.10.3),升级时同步升级。 + 前端包管理推荐 pnpm(仓库含 pnpm 工作流脚本),yarn/npm 安装可能遇到 workspace 差异。 + Redis 客户端为 go-redis/v9,Redis 4.x 以下的个别命令(如部分 INFO 字段)不保证兼容。 :::