HotGo 是一个基于 vue 和 goframe2.0 开发的全栈前后端分离的开发基础平台和移动应用平台,集成jwt鉴权,动态路由,动态菜单,casbin鉴权,消息队列,定时任务等功能。
hotgo.facms.cn/admin
- 基于全新GoFrame2+Vue3+NaiveUI+uniapp开发的全栖框架,为二次开发而生,适合中小型完整应用开发。
- 前端采用Naive-Ui-Admin、Vue、Naive UI、uniapp。
账号:admin 密码:123456
安装文档 · 本地文档 · 更新历史 · 常见问题
- 高生产率:极强的可扩展性,应用化、模块化、插件化机制敏捷开发,几分钟即可搭建一个应用开发骨架。
- 多应用入口:多入口分为 Admin (后台)、Home (前台页面)、Api (对外通用接口)、WebSocket (即时通讯接口),不同的业务,进入不同的应用入口。
- 极致的插件化: 微核架构,功能隔离,高可定制性,可以渐进式开发,亦可以多人协同开发。支持一键创建插件模板、一键安装、更新、卸载插件、可以非常方便的将插件迁移到新项目中。
- 快速生成代码:无需编写代码,只需创建表进行简单配置就能生成一个完善的 CURD、树表等常用的开发代码,其中所需表单控件也是勾选即可直接生成。
- 认证机制:采用 JWT 的用户状态认证及 casbin 的权限认证
- 路由模式:得益于 GoFrame 提供了规范化的路由注册方式,无需注解自动生成api文档
- 模块化设计,面向接口开发
- 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
- 部门管理:配置系统组织机构(公司、部门、岗位),树结构展现支持数据权限。
- 岗位管理:配置系统用户所属担任职务。
- 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
- 角色管理:角色菜单权限分配、设置角色按机构或按上下级关系进行数据范围权限划分。
- 字典管理:对系统中经常使用的一些特定数据进行维护,支持枚举字典和自定义方法字典。
- 配置管理:对系统动态配置常用参数。
- 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
- 登录日志:系统登录日志记录查询包含登录异常。
- 服务日志:服务端运行所产生的警告、异常、崩溃日志的详细数据和堆栈信息。
- 支付网关:集成支付宝、微信支付、QQ支付等多种支付方式,只需简单配置即可使用。
- 资金管理:支持在线充值、订单申请/原路退款、资金提现、资金/积分变动明细等通用模块。
- 在线用户:当前系统中活跃用户状态监控。
- 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
- 代码生成:支持自动化生成前后端代码。CURD关联表、树表、消息队列、定时任务一键生成等。
- 插件应用:支持一键生成插件模板,每个插件之间开发隔离,拥有独立多应用入口、独立配置。完美支持多人协同开发、插件插拔不会对原系统产生影响等。
- 服务监控:监视当前系统CPU、内存、磁盘、网络、堆栈等相关信息。
- 附件管理:文件图片上传,大文件分片上传、断点续传,支持本地、阿里云oss、腾讯云cos、ucloud对象存储、七牛云对象存储、minio等多种上传驱动,后台一键切换配置,并集成了文件选择器。
- TCP服务:基于gtcp的服务应用,支持长连接、断线重连、服务认证、路由分发、RPC消息、拦截器和数据绑定等。简化和规范了服务器开发流程。
- 消息队列:同时兼容 kafka、redis、rocketmq、磁盘队列,一键配置切换到场景适用的MQ。
- 通知公告:采用WebSocket实时推送在线用户最新通知、公告、私信消息。
- 地区编码:整合国内通用省市区编码,运用于项目于一身,支持动态省市区选项。
- 常用工具:集成常用的工具包和命令行工具,可以快速开发自定义命令行,多种启动入口。
HotGo开源以来得到了大家的很多支持,本项目初衷只为互相学习交流,没有任何盈利性目的!欢迎为HotGo贡献代码或提供建议!
gf框架 https://github.com/gogf/gf
naive-ui https://www.naiveui.com
naive-ui-admin https://github.com/jekip/naive-ui-admin
websocket https://github.com/gorilla/websocket
casbin https://github.com/casbin/casbin
gopay https://github.com/go-pay/gopay
from https://github.com/bufanyun/hotgo
---------------------------------------------------------
目录
- node版本 >= v16.0.0
- golang版本 >= v1.21
- goframe版本 >=v2.7.0
- mysql版本 >=5.7
必须先看环境搭建文档,如果安装遇到问题务必先查看常见问题文档
一、克隆项目
git clone https://github.com/bufanyun/hotgo.git && cd hotgo
二、配置你的站点信息
1、服务端:
- 项目数据库文件
storage/data/hotgo.sql
创建数据库并导入 - 将配置文件
manifest/config/config.yaml.bak
复制后改为manifest/config/config.yaml
- 将
manifest/config/config.yaml
中的database.default.link
数据库配置改为你自己的:
# Database. 配置参考:https://goframe.org/pages/viewpage.action?pageId=1114245
database:
logger:
path: "logs/database" # 日志文件路径。默认为空,表示关闭,仅输出到终端
<<: *defaultLogger
stdout: true
default:
link: "mysql:hotgo:hg123456.@tcp(127.0.0.1:3306)/hotgo?loc=Local&parseTime=true&charset=utf8mb4"
debug: true
Prefix: "hg_"
- 将
hack/config.yaml
中的gfcli.gen.dao[0].link
数据库配置改为你自己的:
gfcli:
gen:
dao:
- link: "mysql:hotgo:hg123456.@tcp(127.0.0.1:3306)/hotgo?loc=Local&parseTime=true&charset=utf8mb4"
group: "default" # 分组 使用hotgo代码生成功能时必须填
# tables: "" # 指定当前数据库中需要执行代码生成的数据表。如果为空,表示数据库的所有表都会生成。
tablesEx: "hg_sys_addons_install" # 指定当前数据库中需要排除代码生成的数据表。
removePrefix: "hg_"
descriptionTag: true
noModelComment: true
jsonCase: "CamelLower"
gJsonSupport: true
clear: false
2、web前端:
- /hotgo/web/.env.development
- /hotgo/web/.env.production
- /hotgo/web/.env
三、 启动服务
1、服务端:
cd server
# 设置国内代理,如果已经设置好了代理可以跳过
go env -w GOPROXY=https://goproxy.io,direct
# 更新包
go mod tidy
# 查看命令行方法
go run main.go help
# 启动所有服务
go run main.go # 热编译启动: gf run main.go
2、web前端:
cd web
# 首先确定你以安装node16.0以上版本并安装了包[npm、yarn],否则可能会出现一些未知报错
# 安装依赖
yarn install
# 启动web项目
yarn dev
# 如果顺利,至此到浏览器打开:http://你的IP:8001/admin
# 登录账号:admin, 密码:123456
from https://github.com/bufanyun/hotgo/blob/v2.0/docs/guide-zh-CN/start-installation.md