English | 简体中文
Gin-vue-admin is a backstage management system based on vue and gin, which separates the front and rear of the full stack. It integrates jwt authentication, dynamic routing, dynamic menu, casbin authentication, form generator, code generator and other functions. It provides a variety of sample files, allowing you to focus more time on business development.
Hi! Thank you for choosing gin-vue-admin.
Gin-vue-admin is a full-stack (frontend and backend separation) framework for developers, designers and product managers.
We are excited that you are interested in contributing to gin-vue-admin. Before submitting your contribution though, please make sure to take a moment and read through the following guidelines.
Issues are exclusively for bug reports, feature requests and design-related topics. Other questions may be closed directly. If any questions come up when you are using Element, please hit Gitter for help.
Before submitting an issue, please check if similar problems have already been issued.
Fork this repository to your own account. Do not create branches here.
Commit info should be formatted as
[File Name]: Info about commit. (e.g.
README.md: Fix xxx bug)
Make sure PRs are created to
develop branch instead of
If your PR fixes a bug, please provide a description about the related bug.
Merging a PR takes two maintainers: one approves the changes after reviewing, and then the other reviews and merges.
- node version > v8.6.0 - golang version >= v1.14 - IDE recommendation: Goland - initialization project: different versions of the database are not initialized. See synonyms at initialization https://www.gin-vue-admin.com/docs/first - Replace the Qiniuyun public key, private key, warehouse name and default url address in the project to avoid data confusion in the test file.
Goland And other editing tools，open server catalogue，You can't open it.
gin-vue-admin root directory
# clone the project git clone https://github.com/flipped-aurora/gin-vue-admin.git # open server catalogue cd server # use go mod And install the go dependency package go generate # Compile go build -o server main.go (windows the compile command is go build -o server.exe main.go ) # Run binary ./server (windows The run command is server.exe)
# enter the project directory cd web # install dependency npm install # develop npm run serve
# using go.mod # install go modules go list (go mod tidy) # build the server go build
go get -u github.com/swaggo/swag/cmd/swag
# If you are using a version of Go 1.13 - 1.15 Need to set up manually GO111MODULE=on, The opening mode is as follows, If your Go version is 1.16 ~ Latest edition You can ignore the following step one # Step one、Enable Go Modules Function go env -w GO111MODULE=on # Step two、Configuration GOPROXY Environment variable go env -w GOPROXY=https://goproxy.cn,https://goproxy.io,direct # If you dislike trouble,You can use the go generate Automatically execute code before compilation, But this can't be used command line terminal of `Goland` or `Vscode` cd server go generate -run "go env -w .*?" # 使用如下命令下载swag go get -u github.com/swaggo/swag/cmd/swag
cd server swag init
After executing the above command，server directory will appear in the docs folder
swagger.yamlThree file updates，After starting the go service, type in the browser http://localhost:8888/swagger/index.html You can view swagger document
MySql(5.6.44)，using gorm` to implement data manipulation, added support for SQLite databases.
Redisto implement the recording of the JWT token of the currently active user and implement the multi-login restriction.
├── server ├── api (api entrance) │ └── v1 (v1 version interface) ├── config (configuration package) ├── core (core document) ├── docs (swagger document directory) ├── global (global object) ├── initialize (initialization) │ └── internal (initialize internal function) ├── middleware (middleware layer) ├── model (model layer) │ ├── request (input parameter structure) │ └── response (out-of-parameter structure) ├── packfile (static file packaging) ├── resource (static resource folder) │ ├── excel (excel import and export default path) │ ├── page (form generator) │ └── template (template) ├── router (routing layer) ├── service (service layer) ├── source (source layer) └── utils (tool kit) ├── timer (timer interface encapsulation) └── upload (oss interface encapsulation) └─web （frontend） ├─public （deploy templates） └─src （source code） ├─api （frontend APIs） ├─assets （static files） ├─components（components） ├─router （frontend routers） ├─store （vuex state management） ├─style （common styles） ├─utils （frontend common utilitie） └─view （pages）
Tencent Cloud(please develop your own application for each platform corresponding to
mixinsto encapsulate paging, and the paging method can call
user-multipointto true in
config.yaml(You need to configure redis and redis parameters yourself. During the test period, please report in time if there is a bug).
There are video courses about frontend framework in our blo. If you think the project is helpful to you, you can add my personal WeChat:shouzi_1994，your comments is welcomed。
(1) Development environment course
(2) Template course
(3) 2.0 version introduction and development experience
(4) Golang basic course
(5) gin frame basic teaching
(6) gin-vue-admin version update introduction video
| QQ group |d | :---: | | |
If you find this project useful, you can buy author a glass of juice here
If you use this project for commercial purposes, please comply with the Apache2.0 agreement and retain the author's technical support statement.
：Code submit frequency
：React/respond to issue & PR etc.
：Well-balanced team members and collaboration
：Recent popularity of project
：Star counts, download counts etc.