All Projects → go-admin-team → Go Admin

go-admin-team / Go Admin

Licence: mit
基于Gin + Vue + Element UI的前后端分离权限管理系统脚手架(包含了:多租户的支持,基础用户管理功能,jwt鉴权,代码生成器,RBAC资源控制,表单构建,定时任务等)3分钟构建自己的中后台项目;文档:https://doc.go-admin.dev Demo: https://www.go-admin.dev Antd beta版本:https://preview.go-admin.dev

Programming Languages

go
31211 projects - #10 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to Go Admin

Go Gin Example
An example of gin
Stars: ✭ 4,992 (-8.22%)
Mutual labels:  swagger, gin, jwt, gorm
Snake
🐍 一款小巧的基于Go构建的开发框架,可以快速构建API服务或者Web网站进行业务开发,遵循SOLID设计原则
Stars: ✭ 615 (-88.69%)
Mutual labels:  swagger, gin, jwt, gorm
Go Admin
go web api,包含gin+gorm+jwt+rbac等。
Stars: ✭ 298 (-94.52%)
Mutual labels:  gin, casbin, admin, jwt
ginadmin
基于Gin开发的后台管理系统,集成了、数据库操作、日志管理、权限分配管理、多模板页面、自动分页器、数据库迁移和填充、Docker集成部署等功能、静态资源打包
Stars: ✭ 149 (-97.26%)
Mutual labels:  gin, gorm, casbin, gin-admin
Duckygo
一个同时支持Session以及JWT的高性能高可用 Golang Restful API 脚手架 !
Stars: ✭ 57 (-98.95%)
Mutual labels:  gin, jwt, gorm
Go-Gin-Api
基于golang开源框架 gin封装的api框架
Stars: ✭ 42 (-99.23%)
Mutual labels:  gin, gorm, casbin
golang api
This is a source code of my golang restful api series on youtube.
Stars: ✭ 36 (-99.34%)
Mutual labels:  jwt, gin, gorm
gt-crud
gin+gorm+mysql+api[两步自动crud]
Stars: ✭ 15 (-99.72%)
Mutual labels:  gin, gorm, casbin
Golang Gin Realworld Example App
Exemplary real world application built with Golang + Gin
Stars: ✭ 1,780 (-67.27%)
Mutual labels:  gin, jwt, gorm
Gin Web
由gin + gorm + jwt + casbin组合实现的RBAC权限管理脚手架Golang版, 搭建完成即可快速、高效投入业务开发
Stars: ✭ 107 (-98.03%)
Mutual labels:  gin, casbin, jwt
fiber-boilerplate
This is the go boilerplate on the top of fiber web framework. With simple setup you can use many features out of the box
Stars: ✭ 184 (-96.62%)
Mutual labels:  jwt, gorm, casbin
Ruoyi Vue Fast
(RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统
Stars: ✭ 107 (-98.03%)
Mutual labels:  admin, vue-admin, jwt
Ruoyi Vue
(RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统
Stars: ✭ 596 (-89.04%)
Mutual labels:  admin, vue-admin, jwt
Ginbro
Converting a MySQL database'schema to a RESTful golang APIs app in the fastest way
Stars: ✭ 97 (-98.22%)
Mutual labels:  gin, jwt, gorm
Zendea
A free, open-source, self-hosted forum software written in Go 官方QQ群:656868
Stars: ✭ 116 (-97.87%)
Mutual labels:  gin, jwt, gorm
Go Gin Api
基于 Gin 进行模块化设计的 API 框架,封装了常用功能,使用简单,致力于进行快速的业务研发。比如,支持 cors 跨域、jwt 签名验证、zap 日志收集、panic 异常捕获、trace 链路追踪、prometheus 监控指标、swagger 文档生成、viper 配置文件解析、gorm 数据库组件、gormgen 代码生成工具、graphql 查询语言、errno 统一定义错误码、gRPC 的使用 等等。
Stars: ✭ 730 (-86.58%)
Mutual labels:  swagger, gin, gorm
iris-admin
Web admin for iris-go framwork
Stars: ✭ 602 (-88.93%)
Mutual labels:  gin, gorm, casbin
Go-bjut
A bbs system.
Stars: ✭ 60 (-98.9%)
Mutual labels:  gin, gorm
golang-gin-restfulAPI-example-app
An example Golang Restful API with [Gin, MongoDB, gin-jwt, gin-sessions, gin-authz, gin-swagger, validate.v9, casbin, go-ini]
Stars: ✭ 104 (-98.09%)
Mutual labels:  gin, casbin
go-12factor-example
Example the 12factor app using golang
Stars: ✭ 20 (-99.63%)
Mutual labels:  gin, gorm

go-admin

Build Status Release License

English | 简体中文

The front-end and back-end separation authority management system based on Gin + Vue + Element UI is extremely simple to initialize the system. You only need to modify the database connection in the configuration file. The system supports multi-instruction operations. Migration instructions can make it easier to initialize database information. Service instructions It's easy to start the api service.

documentation

Front-end project

Video tutorial

Feature

  • Follow RESTful API design specifications

  • Based on the GIN WEB API framework, it provides rich middleware support (user authentication, cross-domain, access log, tracking ID, etc.)

  • RBAC access control model based on Casbin

  • JWT authentication

  • Support Swagger documents (based on swaggo)

  • Database storage based on GORM, which can expand multiple types of databases

  • Simple model mapping of configuration files to quickly get the desired configuration

  • Code generation tool

  • Form builder

  • Multi-command mode

  • TODO: unit test

🎁 Internal

  1. User management: The user is the system operator, this function mainly completes the system user configuration.
  2. Department management: configure the system organization (company, department, group), and display the tree structure to support data permissions.
  3. Position management: configure the positions of system users.
  4. Menu management: configure the system menu, operation authority, button authority identification, interface authority, etc.
  5. Role management: Role menu permission assignment and role setting are divided into data scope permissions by organization.
  6. Dictionary management: Maintain some relatively fixed data frequently used in the system.
  7. Parameter management: dynamically configure common parameters for the system.
  8. Operation log: system normal operation log record and query; system abnormal information log record and query.
  9. Login log: The system login log record query contains login exceptions.
  10. Interface documentation: Automatically generate related api interface documents according to the business code.
  11. Code generation: According to the data table structure, generate the corresponding addition, deletion, modification, and check corresponding business, and the whole process of visual operation, so that the basic business can be implemented with zero code.
  12. Form construction: Customize the page style, drag and drop to realize the page layout.
  13. Service monitoring: View the basic information of some servers.
  14. Content management: demo function, including classification management and content management. You can refer to the easy to use quick start.

Ready to work

You need to install locally [go] [gin] nodegit

At the same time, a series of tutorials including videos and documents are provided. How to complete the downloading to the proficient use, it is strongly recommended that you read these tutorials before you practice this project! ! !

Easily implement go-admin to write the first application-documentation tutorial

Step 1 - basic content introduction

Step 2 - Practical application - writing database operations

Teach you from getting started to giving up-video tutorial

How to start go-admin

Easily implement business using build tools

v1.1.0 version code generation tool-free your hands [Advanced]

Explanation of multi-command startup mode and IDE configuration

Configuration instructions for go-admin menu [Must see]

How to configure menu information and interface information [Must see]

go-admin permission configuration instructions [Must see]

Instructions for use of go-admin data permissions [Must see]

If you have any questions, please read the above-mentioned usage documents and articles first. If you are not satisfied, welcome to issue and pr. Video tutorials and documents are being updated continuously.

📦 Local development

Development directory creation

# Create a development directory
mkdir goadmin
cd goadmin

Get the code

Important note: the two projects must be placed in the same folder;

# Get backend code
git clone https://github.com/go-admin-team/go-admin.git

# Get the front-end code
git clone https://github.com/go-admin-team/go-admin-ui.git

Startup instructions

Server startup instructions

# Enter the go-admin backend project
cd ./go-admin

# Compile the project
go build

# Change setting 
# File path go-admin/config/settings.yml
vi ./config/setting.yml 

# 1. Modify the database information in the configuration file
# Note: The corresponding configuration data under settings.database
# 2. Confirm the log path

:::tip ⚠️Note that this problem will occur if CGO is not installed in the windows environment;

E:\go-admin>go build
# github.com/mattn/go-sqlite3
cgo: exec /missing-cc: exec: "/missing-cc": file does not exist

or

D:\Code\go-admin>go build
# github.com/mattn/go-sqlite3
cgo: exec gcc: exec: "gcc": executable file not found in %PATH%

Solve the cgo problem and enter

:::

Initialize the database, and start the service

# The first configuration needs to initialize the database resource information
# Use under macOS or linux
$ ./go-admin migrate -c=config/settings.dev.yml

# ⚠️Note: Use under windows
$ go-admin.exe migrate -c=config/settings.dev.yml

# Start the project, you can also use the IDE for debugging
# Use under macOS or linux
$ ./go-admin server -c config/settings.yml

# ⚠️Note: Use under windows
$ go-admin.exe server -c config/settings.yml

Use docker to compile and start

# Compile the image
docker build -t go-admin .


# Start the container, the first go-admin is the container name, and the second go-admin is the image name
# -v Mapping configuration file Local path: container path
docker run --name go-admin -p 8000:8000 -v /config/settings.yml:/config/settings.yml -d go-admin-server

Generation Document

go generate

Cross compile

# windows
env GOOS=windows GOARCH=amd64 go build main.go

# or
# linux
env GOOS=linux GOARCH=amd64 go build main.go

UI interactive terminal startup instructions

# Installation dependencies
npm install   # or cnpm install

# Start service
npm run dev

🎬 Online Demo

admin / 123456

演示地址:http://www.go-admin.dev

📨 Interactive

Wechat go-admin技术交流乙号

💎 Members

JetBrains open source certificate support

The go-admin project has always been developed in the GoLand integrated development environment under JetBrains, based on the free JetBrains Open Source license(s) genuine free license. I would like to express my gratitude.

🤝 Thanks

  1. chengxiao
  2. gin
  3. casbin
  4. spf13/viper
  5. gorm
  6. gin-swagger
  7. jwt-go
  8. vue-element-admin
  9. ruoyi-vue
  10. form-generator

🤟 Sponsor Us

If you think this project helped you, you can buy a glass of juice for the author to show encouragement 🍹

🤝 Link

Go developer growth roadmap

🔑 License

MIT

Copyright (c) 2020 wenjianzhang

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].