Macaron alternatives and similar packages
Based on the "Web Frameworks" category.
Alternatively, view Macaron alternatives based on common mentions on social networks and blogs.
-
Gin
Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin. -
go-kratos
Your ultimate Go microservices framework for the cloud-native era. -
Iris
The fastest HTTP/2 Go Web Framework. New, modern and easy to learn. Fast development with Code you control. Unbeatable cost-performance ratio :rocket: -
Gorilla WebSocket
A fast, well-tested and widely used WebSocket implementation for Go. -
mux
A powerful HTTP router and URL matcher for building Go web servers with ๐ฆ -
chi
lightweight, idiomatic and composable router for building Go HTTP services -
GoFrame
GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang. -
goa
๐ Goa: Elevate Go API development! ๐ Streamlined design, automatic code generation, and seamless HTTP/gRPC support. โจ -
go-socket.io
socket.io library for golang, a realtime application framework. -
Hertz
Go HTTP framework with high-performance and strong-extensibility for building micro-services. -
Faygo
Faygo is a fast and concise Go Web framework that can be used to develop high-performance web app(especially API) with fewer codes. Just define a struct handler, faygo will automatically bind/verify the request parameters and generate the online API doc. -
render
Go package for easily rendering JSON, XML, binary data, and HTML templates responses. -
pat
Sinatra style pattern muxer for Goโs net/http library, by the author of Sinatra. -
Goyave
๐ Elegant Golang REST API Framework (v5 release candidate available) -
Atreugo
High performance and extensible micro web framework. Zero memory allocations in hot paths. -
tigertonic
A Go framework for building JSON web services inspired by Dropwizard -
Huma
A modern, simple, fast & flexible micro framework for building HTTP REST/RPC APIs in Go backed by OpenAPI 3 and JSON Schema. -
fasthttprouter
A high performance fasthttp request router that scales well -
Goji
Goji is a minimalistic and flexible HTTP request multiplexer for Go (golang) -
Beego
beego is an open-source, high-performance web framework for the Go programming language. -
go-server-timing
Go (golang) library for creating and consuming HTTP Server-Timing headers -
Gearbox
Gearbox :gear: is a web framework written in Go with a focus on high performance
WorkOS - The modern identity platform for B2B SaaS
Do you think we are missing an alternative of Macaron or a related project?
Popular Comparisons
README
Macaron
Package macaron is a high productive and modular web framework in Go.
๐ฃ Announcement
- If you're considering using Macaron, you may want to take a look at Flamego first, which is the successor of the Macaron.
- That means Macaron is officially in the maintenance mode, and no major features will be added to Macaron.
Getting Started
The minimum requirement of Go is 1.12.
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
- Critical Stack Intel: A 100% free intel marketplace from Critical Stack, Inc.
Getting Help
Credits
- Basic design of Martini.
- Logo is modified by @insionng based on Tribal Dragon.
License
This project is under the Apache License, Version 2.0. See the [LICENSE](LICENSE) file for the full license text.
*Note that all licence references and agreements mentioned in the Macaron README section above
are relevant to that project's source code only.