GoGin is a Golang & Gin API starter template with some built in niceities to help you hit the ground running. Swagger is built for robust API documentation and testing.
$ go get github.com/xxphenomxx/GoGin ## How to run ### Required - Glide (Install dependencies) - MongoDB - Redis You should modify conf/app.ini
[mongo] User = Password = Host = 127.0.0.1 Posr = 27017 Name = testdb [redis] Host = 127.0.0.1:6379 Password = MaxIdle = 30 MaxActive = 30 IdleTimeout = 200 ... $ cd $GOPATH/src/GoGin Install Glide: [glide](https://glide.sh/) $ glide install $ go run main.go Project information and existing API
Initializing MongoDB connection... Successfully connected to MongoDB [GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. - using env: export GIN_MODE=release - using code: gin.SetMode(gin.ReleaseMode) [GIN-debug] GET /export/*filepath --> GoGin/vendor/github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (4 handlers) [GIN-debug] HEAD /export/*filepath --> GoGin/vendor/github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (4 handlers) [GIN-debug] GET /upload/images/*filepath --> GoGin/vendor/github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (4 handlers) [GIN-debug] HEAD /upload/images/*filepath --> GoGin/vendor/github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (4 handlers) [GIN-debug] GET /auth --> GoGin/vendor/github.com/xxphenomxx/GoGin/routers/api.CheckAuth (4 handlers) [GIN-debug] GET /swagger/*any --> GoGin/vendor/github.com/swaggo/gin-swagger.WrapHandler.func1 (4 handlers) [GIN-debug] POST /upload --> GoGin/vendor/github.com/xxphenomxx/GoGin/routers/api.UploadImage (4 handlers) [GIN-debug] GET /api/v1/users --> GoGin/vendor/github.com/xxphenomxx/GoGin/routers/api/v1.GetUsers (5 handlers) [info] start http server listening :9000 Listening port is 9000 Actual pid is 4393 Swagger doc
Browse to: 127.0.0.1:9000/swagger/index.html
- RESTful API
- Golang Mgo
- Swagger
- logging
- Jwt-go
- CORS
- Gin
- Graceful restart or stop (fvbock/endless)
- App configurable
- Cron
- Redis
