contrib icon indicating copy to clipboard operation
contrib copied to clipboard

Collection of middlewares created by the community


Build Status

Here you'll find middleware ready to use with Gin Framework. Submit your pull request, either with the package in a folder, or by adding a link to this

If adding a package directly, don't forget to create a inside with author name. If adding a link to your own repository, please follow this example:

+ nameOfMiddleware (

Each author is responsible for maintaining their own code, although if you submit as a package, you allow the community to fix it. You can also submit a pull request to fix an existing package.

List of external middleware

  • RestGate - Secure authentication for REST API endpoints
  • staticbin - middleware/handler for serving static files from binary data
  • gin-cors - Official CORS gin's middleware
  • gin-csrf - CSRF protection
  • gin-health - middleware that simplifies stat reporting via gocraft/health
  • gin-merry - middleware for pretty-printing merry errors with context
  • gin-revision - Revision middleware for Gin framework
  • gin-jwt - JWT Middleware for Gin Framework
  • gin-sessions - session middleware based on mongodb and mysql
  • gin-location - middleware for exposing the server's hostname and scheme
  • gin-nice-recovery - panic recovery middleware that lets you build a nicer user experience
  • gin-limiter - A simple gin middleware for ip limiter based on redis.
  • gin-limit - limits simultaneous requests; can help with high traffic load
  • gin-limit-by-key - An in-memory middleware to limit access rate by custom key and rate.
  • ez-gin-template - easy template wrap for gin
  • gin-hydra - Hydra middleware for Gin
  • gin-glog - meant as drop-in replacement for Gin's default logger
  • gin-gomonitor - for exposing metrics with Go-Monitor
  • gin-oauth2 - for working with OAuth2
  • static An alternative static assets handler for the gin framework.
  • xss-mw - XssMw is a middleware designed to "auto remove XSS" from user submitted input
  • gin-helmet - Collection of simple security middleware.
  • gin-jwt-session - middleware to provide JWT/Session/Flashes, easy to use while also provide options for adjust if necessary. Provide sample too.
  • gin-template - Easy and simple to use html/template for gin framework.
  • pongo2gin - Package pongo2gin is a template renderer that can be used with the Gin web framework [pongo2 like django templates]
  • gin-redis-ip-limiter - Request limiter based on ip address. It works with redis and with a sliding-window mechanism.
  • gin-method-override - Method override by POST form param _method, inspired by Ruby's same name rack
  • gin-access-limit - An access-control middleware by specifying allowed source CIDR notations.
  • gin-session - Session middleware for Gin
  • gin-stats - Lightweight and useful request metrics middleware
  • gin-statsd - A Gin middleware for reporting to statsd deamon
  • gin-health-check - A health check middleware for Gin
  • gin-session-middleware - A efficient, safely and easy-to-use session library for Go.
  • ginception - Nice looking exception page
  • gin-inspector - Gin middleware for investigating http request.
  • gin-dump - Gin middleware/handler to dump header/body of request and response. Very helpful for debugging your applications.
  • go-gin-prometheus - Gin Prometheus metrics exporter
  • ginprom - Prometheus metrics exporter for Gin
  • gin-go-metrics - Gin middleware to gather and store metrics using rcrowley/go-metrics
  • ginrpc - Gin middleware/handler auto binding tools. support object register by annotated route like beego
  • goscope - Watch incoming requests, outgoing responses and logs of your Gin application with this plug and play middleware inspired by Laravel Telescope.
  • gin-nocache - NoCache is a simple piece of middleware that sets a number of HTTP headers to prevent a router (or subrouter) from being cached by an upstream proxy and/or client.
  • logging - logging provide GinLogger uses zap to log detailed access logs in JSON or text format with trace id, supports flexible and rich configuration, and supports automatic reporting of log events above error level to sentry
  • ratelimiter - Gin middleware for token bucket ratelimiter.
  • servefiles - serving static files with performance-enhancing cache control headers; also handles gzip & brotli compressed files