GoAdmin is a toolkit to help you build a data visualization admin panel for your golang app.

go-admin

the missing golang data admin panel builder tool.

Documentation | 中文文档 | 中文介绍 | DEMO | 中文DEMO | Twitter | Forum

Build Status Go Report Card golang telegram slack GoDoc license

Inspired by laravel-admin

Preface

GoAdmin is a toolkit to help you build a data visualization admin panel for your golang app.

Online demo: https://demo.go-admin.com

Quick follow up example: https://github.com/GoAdminGroup/example

GoAdmin+vue example: https://github.com/GoAdminGroup/goadmin-vue-example

interface

Features

  • 🚀 Fast: build a production admin panel app in ten minutes.
  • 🎨 Theming: beautiful ui themes supported(default adminlte, more themes are coming.)
  • 🔢 Plugins: many plugins to use(more useful and powerful plugins are coming.)
  • Rbac: out of box rbac auth system.
  • ⚙️ Frameworks: support most of the go web frameworks.

Translation

We need your help: https://github.com/GoAdminGroup/docs/issues/1

Who is using

Comment the issue to tell us.

How to

Following three steps to run it.

Note: now you can quickly start by doing like this.

$ mkdir new_project && cd new_project
$ go install github.com/GoAdminGroup/go-admin/adm
$ adm init

Or (use adm whose version higher or equal than v1.2.16)

$ mkdir new_project && cd new_project
$ go install github.com/GoAdminGroup/go-admin/adm
$ adm init web

Step 1: import sql

Step 2: create main.go

main.go

http://localhost:9033/admin/info/user // AddGenerator("user", datamodel.GetUserTable). Use(r) // customize your pages eng.HTML("GET", "/admin", datamodel.GetContent) _ = r.Run(":9033") } ">
package main

import (
	"github.com/gin-gonic/gin"
	_ "github.com/GoAdminGroup/go-admin/adapter/gin"
	_ "github.com/GoAdminGroup/go-admin/modules/db/drivers/mysql"
	"github.com/GoAdminGroup/go-admin/engine"
	"github.com/GoAdminGroup/go-admin/plugins/admin"
	"github.com/GoAdminGroup/go-admin/modules/config"
	"github.com/GoAdminGroup/themes/adminlte"
	"github.com/GoAdminGroup/go-admin/template"
	"github.com/GoAdminGroup/go-admin/template/chartjs"
	"github.com/GoAdminGroup/go-admin/template/types"
	"github.com/GoAdminGroup/go-admin/examples/datamodel"
	"github.com/GoAdminGroup/go-admin/modules/language"
)

func main() {
	r := gin.Default()

	eng := engine.Default()

	// global config
	cfg := config.Config{
		Databases: config.DatabaseList{
			"default": {
				Host:         "127.0.0.1",
				Port:         "3306",
				User:         "root",
				Pwd:          "root",
				Name:         "goadmin",
				MaxIdleCon: 50,
				MaxOpenCon: 150,
				Driver:       "mysql",
			},
        	},
		UrlPrefix: "admin",
		// STORE is important. And the directory should has permission to write.
		Store: config.Store{
		    Path:   "./uploads", 
		    Prefix: "uploads",
		},
		Language: language.EN,
		// debug mode
		Debug: true,
		// log file absolute path
		InfoLogPath: "/var/logs/info.log",
		AccessLogPath: "/var/logs/access.log",
		ErrorLogPath: "/var/logs/error.log",
		ColorScheme: adminlte.ColorschemeSkinBlack,
	}

	// add component chartjs
	template.AddComp(chartjs.NewChart())

	_ = eng.AddConfig(&cfg).
		AddGenerators(datamodel.Generators).
	        // add generator, first parameter is the url prefix of table when visit.
    	        // example:
    	        //
    	        // "user" => http://localhost:9033/admin/info/user
    	        //		
		AddGenerator("user", datamodel.GetUserTable).
		Use(r)
	
	// customize your pages
	eng.HTML("GET", "/admin", datamodel.GetContent)

	_ = r.Run(":9033")
}

More framework examples: https://github.com/GoAdminGroup/go-admin/tree/master/examples

Step 3: run

GO111MODULE=on go run main.go

visit: http://localhost:9033/admin

account: admin password: admin

A super simple example here

See the docs for more details.

Backers

Your support will help me do better! [Become a backer]

Contribution

here for contribution guide

here to join into the develop team

join telegram

Similar Resources

log4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web servicelog4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web service

log4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web servicelog4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web service

log4jScanner Goals This tool provides you with the ability to scan internal (only) subnets for vulnerable log4j web services. It will attempt to send

Jan 5, 2023

A simple app that reads NBMiner status REST API data and sends it to InfluxDB

NBMiner Reporter A simple Go app that reads NBMiner status REST API data and sends it to InfluxDB. Usage Using the reporter is quite easy, specially i

Feb 8, 2022

A rest api to help automate some of the things Matt does

AutoMatt A rest api to help automate some of the things Matt does run in docker for dev go build && \ docker build -t automatt:latest . && \ docker ru

Dec 6, 2021

GoVWA - A web application developed to help the pentester and programmers to learn the vulnerabilities

GoVWA - A web application developed to help the pentester and programmers to learn the vulnerabilities

Feb 12, 2022

📔 Journal helps you manage multiple journals with ease from the comfort of your terminal, web browser or API client.

📔 Journal helps you manage multiple journals with ease from the comfort of your terminal, web browser or API client.

Journal helps you manage multiple journals with ease from the comfort of your terminal, web browser or API client. You can import/export journals as horcruxes and set simple customizations for layout, theme, and keybindings.

Sep 14, 2022

an online REST renting book platform which you can authenticate, order, reserve a book in your account.

an online REST renting book platform which you can authenticate, order, reserve a book in your account.

BOOK MAN an online REST renting book platform which you can authenticate, order, reserve a book in your account. it's a microservices project with hig

Jul 22, 2022

A Go Application helps you save your contacts on cloud safely

Contact Saver This Application helps you save your contacts on cloud safely. The backend is built with Go programming language and the front end with

Nov 10, 2021

66 is two player game played with playing cards and from now on you can play it from browser with your friends.

altmis-alti 66 is two player game played with playing cards and this project provides multiplayer game space from browser. How to run? Clone the proje

Feb 1, 2022

Build a TodoList with Go Design and implement a backend RESTful service in golang with CRUD

May we ask Igor to do a little project in leu of sample code? If there is a hire, the hours spent should be invoiced, so please keep track of that. Th

May 5, 2022
A dataviz framework help gopher to build a admin panel in ten minutes
A dataviz framework help gopher to build a admin panel in ten minutes

the missing golang data admin panel builder tool. Documentation | 中文文档 | DEMO Inspired by laravel-admin Preface GoAdmin is a toolkit to help you build

Oct 17, 2022
go-admin项目地址已经转移https://github.com/go-admin-team/go-admin
go-admin项目地址已经转移https://github.com/go-admin-team/go-admin

English | 简体中文 基于Gin + Vue + Element UI的前后端分离权限管理系统 系统初始化极度简单,只需要配置文件中,修改数据库连接,系统启动后会自动初始化数据库信息以及必须的基础数据 在线文档国际 在线文档国内 前端项目 视频教程 ✨ 特性 遵循 RESTful API 设

Dec 31, 2022
Jeck goadmin
Jeck goadmin

GoAdim 底层框架:GF 前端模板:stisla 数据库:mysql 缓存:redis 权限:token 安装: 1:数据库在:sql文件夹下 2:修改config文件下的config 3:请打开redis 4: go run main.go 5:账号:13512458216 密码:123456

Nov 27, 2021
Simple control panel for Golang based on Gin framework and MongoDB
Simple control panel for Golang based on Gin framework and MongoDB

Summer panel Simple control panel for Golang based on Gin framework and MongoDB How To Install go install github.com/night-codes/summer/summerGen@late

Dec 16, 2022
This is a template project to help beginners learn, or to help developers develop some interesting small projects
This is a template project to help beginners learn, or to help developers develop some interesting small projects

This is a template project to help beginners learn, or to help developers develop some interesting small projects

Dec 13, 2022
Ares-admin - Kratos Project Template For Golang

Kratos Project Template Install Kratos go get -u github.com/go-kratos/kratos/cmd

Feb 15, 2022
快速crud开发框架,甚至于一行代码不用敲;自动根据数据库表结构自动生成crud代码;低代码开发框架;至少减少百分90%工作量;可快速把现有系统转成GfEasy版本;后端使用GoFrame开发;后台前端使用 cool-admin-vue;后台使用自适应布局,手机、PC完美使用。
快速crud开发框架,甚至于一行代码不用敲;自动根据数据库表结构自动生成crud代码;低代码开发框架;至少减少百分90%工作量;可快速把现有系统转成GfEasy版本;后端使用GoFrame开发;后台前端使用 cool-admin-vue;后台使用自适应布局,手机、PC完美使用。

GoFrame: GfEasy GfEasy So Easy 快速crud开发框架,甚至于一行代码不用敲 自动根据数据库表结构自动生成crud代码 低代码开发框架 至少减少百分90%工作量 可快速把现有系统转成GfEasy版本 后端使用GoFrame开发;后台前端使用 cool-admin-vue

Dec 28, 2022
Automated penetration and auxiliary systems, providing XSS, XXE, DNS log, SSRF, RCE, web netcat and other Servers,gin-vue-admin
Automated penetration and auxiliary systems, providing XSS, XXE, DNS log, SSRF, RCE, web netcat and other Servers,gin-vue-admin

Simple DNS log Server,easy to ACME DNS challenge log easy send to elasticsearch https://github.com/hktalent/DNS_Server go4Hacker Automated penetration

Dec 30, 2022
記帳-PWA-web-app (Bookkeeping-PWA-web-app)
記帳-PWA-web-app (Bookkeeping-PWA-web-app)

GoKeep (bookkeeping web app) 記帳-PWA-web-app (Bookkeeping-PWA-web-app) demo link : https://bookkepping.herokuapp.com/ 測試用帳密 : tester002 , tester002 (亦可

Jan 31, 2022
DCreater - Build your own blog system with golang

DCreater - Build your own blog system with golang

Aug 18, 2022