grafana/vendor/gopkg.in/macaron.v1
Marcus Efraimsson 93919427f8
Upgrade grafana-plugin-model (#19438)
* use grafana-plugin-model dependency that uses go modules

* use grafana-plugin-model with updated hashicorp/go-plugin

* use grafana-plugin-model with re-compiled protos

* test using protoc-gen-go v1.2.0 tag

* use grafana-plugin-model with re-compiled protos

* chore: fix deprecation warning for lint

* use latest grafana-plugin-model

Fixes #19454
2019-09-30 15:16:04 +02:00
..
.gitignore replace dep with go modules (#16017) 2019-04-16 12:00:55 +02:00
context.go Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
go.mod Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
go.sum Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
LICENSE migrate from govendor to dep 2018-01-19 09:48:15 +01:00
logger.go migrate from govendor to dep 2018-01-19 09:48:15 +01:00
macaron.go Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
macaronlogo.png replace dep with go modules (#16017) 2019-04-16 12:00:55 +02:00
README.md replace dep with go modules (#16017) 2019-04-16 12:00:55 +02:00
recovery.go tech(build): move dependencies to vendor folder 2016-09-14 16:14:27 +02:00
render.go Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
response_writer.go Backend image rendering as plugin (#11966) 2018-05-24 15:26:27 +02:00
return_handler.go tech(build): move dependencies to vendor folder 2016-09-14 16:14:27 +02:00
router.go Backend image rendering as plugin (#11966) 2018-05-24 15:26:27 +02:00
static.go tech: upgraded macaron & macaron inject, binding, session 2017-04-25 15:16:32 +02:00
tree.go Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915) 2019-09-09 14:22:06 +03:00
util_go17.go migrate from govendor to dep 2018-01-19 09:48:15 +01:00
util_go18.go migrate from govendor to dep 2018-01-19 09:48:15 +01:00

Macaron Build Status

Macaron Logo

Package macaron is a high productive and modular web framework in Go.

Getting Started

The minimum requirement of Go is 1.6.

To install Macaron:

go get gopkg.in/macaron.v1

The very basic usage of Macaron:

package main

import "gopkg.in/macaron.v1"

func main() {
	m := macaron.Classic()
	m.Get("/", func() string {
		return "Hello world!"
	})
	m.Run()
}

Features

  • Powerful routing with suburl.
  • Flexible routes combinations.
  • Unlimited nested group routers.
  • Directly integrate with existing services.
  • Dynamically change template files at runtime.
  • Allow to use in-memory template and static files.
  • Easy to plugin/unplugin features with modular design.
  • Handy dependency injection powered by inject.
  • Better router layer and less reflection make faster speed.

Middlewares

Middlewares allow you easily plugin/unplugin features for your Macaron applications.

There are already many middlewares to simplify your work:

  • render - Go template engine
  • static - Serves static files
  • gzip - Gzip compression to all responses
  • binding - Request data binding and validation
  • i18n - Internationalization and Localization
  • cache - Cache manager
  • session - Session manager
  • csrf - Generates and validates csrf tokens
  • captcha - Captcha service
  • pongo2 - Pongo2 template engine support
  • sockets - WebSockets channels binding
  • bindata - Embed binary data as static and template files
  • toolbox - Health check, pprof, profile and statistic services
  • oauth2 - OAuth 2.0 backend
  • authz - ACL/RBAC/ABAC authorization based on Casbin
  • switcher - Multiple-site support
  • method - HTTP method override
  • permissions2 - Cookies, users and permissions
  • renders - Beego-like render engine(Macaron has built-in template engine, this is another option)
  • piwik - Server-side piwik analytics

Use Cases

  • Gogs: A painless self-hosted Git Service
  • Grafana: The open platform for beautiful analytics and monitoring
  • Peach: A modern web documentation server
  • Go Walker: Go online API documentation
  • Switch: Gopm registry
  • Critical Stack Intel: A 100% free intel marketplace from Critical Stack, Inc.

Getting Help

Credits

License

This project is under the Apache License, Version 2.0. See the LICENSE file for the full license text.