Go Middleware

Open-source Go projects categorized as Middleware | Edit details

Top 23 Go Middleware Projects

  • GitHub repo 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.

    Project mention: Deploy a Go Gin Application on Koyeb | dev.to | 2022-01-12

    Gin is a web framework written in Golang focusing on performance and simplicity.

  • GitHub repo Iris

    The fastest HTTP/2 Go Web Framework. AWS Lambda, gRPC, MVC, Unique Router, Websockets, Sessions, Test suite, Dependency Injection and more. A true successor of expressjs and laravel | 谢谢 https://github.com/kataras/iris/issues/1329 |

    Project mention: Can I mix REST and gRPC? | reddit.com/r/golang | 2021-05-05

    You can through api gateway. It's easier with Iris web framework, example code: https://github.com/kataras/iris/tree/master/_examples/mvc/grpc-compatible.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • GitHub repo Echo

    High performance, minimalist Go web framework

    Project mention: Build a REST API with Golang and MongoDB - Echo Version | dev.to | 2022-01-02

    This post will discuss building a user management application with Golang using the Echo framework and MongoDB. At the end of this tutorial, we will learn how to structure an Echo application, build a REST API and persist our data using MongoDB.

  • GitHub repo mux

    A powerful HTTP router and URL matcher for building Go web servers with 🦍

    Project mention: Web dev learning path advice | reddit.com/r/golang | 2022-01-15

    Gorilla Mux for HTTP routing / restful APIs: https://github.com/gorilla/mux

  • GitHub repo chi

    lightweight, idiomatic and composable router for building Go HTTP services

    Project mention: chai - a library for type safe http handlers via generics with automatic swagger generation | reddit.com/r/golang | 2022-01-04

    chai is an extension for a few popular http routers (chi, gorilla/mux) that adds support for type safe http handlers via Go 1.18's generics. This allows it to also generate a swagger spec by automatically detecting the request/response types, http methods, route paths and path params.

  • GitHub repo resty

    Simple HTTP and REST client library for Go

    Project mention: Any http client framework? | reddit.com/r/golang | 2021-08-31

    Check out https://github.com/go-resty/resty

  • GitHub repo KrakenD

    Ultra performant API Gateway with middlewares. A project hosted at The Linux Foundation

    Project mention: Authelia is an open-source authentication/authorization server with 2FA/SSO | news.ycombinator.com | 2021-03-10

    Thanks for the pointer to Express API Gateway.

    A took a look at Krakend a while back, and it didn't seem to support it either [1]

    [1] https://github.com/devopsfaith/krakend/issues/274

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • GitHub repo go-grpc-middleware

    Golang gRPC Middlewares: interceptor chaining, auth, logging, retries and more.

    Project mention: [Question] Suggested way to update a database row using gRPC/PostgreSQL (pgx) ? | reddit.com/r/golang | 2021-11-16

    I do some basic validation at the server layer using a GRPC interceptor.

  • GitHub repo goku_lite

    A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、服务编排、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性。

    Project mention: API Gateway | dev.to | 2021-10-16


  • GitHub repo alice

    Painless middleware chaining for Go

    Project mention: Web Development in Go: Middleware, Templating, Databases & Beyond | dev.to | 2021-01-27

    You can use a library like Alice to transform the above construct to a more readable form such as:

  • GitHub repo gin-swagger

    gin middleware to automatically generate RESTful API documentation with Swagger 2.0.

    Project mention: How to configure swagger UI so it doesn't need the URL? | reddit.com/r/golang | 2021-03-10

    I don't use Gin, but I took the canonical example from https://github.com/swaggo/gin-swagger#canonical-example, removed the url := ginSwagger.URL line entirely (and removed url from the next line), and it works as expected locally or when deployed in kubernetes (via kind) for me.

  • GitHub repo secure

    HTTP middleware for Go that facilitates some quick security wins.

    Project mention: Any good git repos made by a single dev? | reddit.com/r/golang | 2021-08-18
  • GitHub repo martian

    Martian is a library for building custom HTTP/S proxies

    Project mention: A very simple uptime monitor written with go | reddit.com/r/golang | 2021-04-21

    Future plans I have is for these workers to actually run chromedp (https://github.com/chromedp/chromedp) or something similar to generate a har file. Currently the har file can't be generated with chromedp but you could use a proxy like martian (https://github.com/google/martian) maybe to generate this. Then you could results like https://tools.pingdom.com/ (the tool seems not to show each file request for me anymore) for every uptime check and keep stats for this. You are not only testing the uptime then but also the full load time of the page along with checking for other potential problems.

  • GitHub repo 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.

  • GitHub repo handlers

    A collection of useful middleware for Go HTTP services & web applications 🛃

    Project mention: Noob here. Need recommendation for best REST API framework. | reddit.com/r/golang | 2021-07-19

    To add to this, gorilla also offers some middleware. And its super easy to import your own and wrap it.

  • GitHub repo nosurf

    CSRF protection middleware for Go.

  • GitHub repo grpc-tools

    A suite of gRPC debugging tools. Like Fiddler/Charles but for gRPC.

    Project mention: gRPC vs REST: comparing APIs architectural styles | reddit.com/r/programming | 2021-06-02

    https://github.com/bradleyjkemp/grpc-tools, specific to gRPC with replay features, etc.

  • GitHub repo gentleman

    Plugin-driven, extensible HTTP client toolkit for Go

  • GitHub repo gziphandler

    Go middleware to gzip HTTP responses

    Project mention: gzhttp: Fast HTTP gzip wrappers for servers and clients. | reddit.com/r/golang | 2021-06-05

    After seeing how the most popular gzip http wrapper hadn't been updated for nearly 2 years, I decided to fork it and implement all the missing/requested functionality.

  • GitHub repo gorilla/csrf

    gorilla/csrf provides Cross Site Request Forgery (CSRF) prevention middleware for Go web applications & services 🔒

  • GitHub repo gin-boilerplate

    The fastest way to deploy a restful api's with Gin Framework with a structured project that defaults to PostgreSQL database and JWT authentication middleware stored in Redis

    Project mention: What is the best algorithm for hashing passwords? | reddit.com/r/golang | 2021-03-14
  • GitHub repo mortar

    Mortar is a GO framework/library for building gRPC (and REST) web services. (by go-masonry)

    Project mention: Mortar: GO framework/library for building gRPC (and REST) web services | reddit.com/r/golang | 2021-02-13
  • GitHub repo gongular

    A different approach to Go web frameworks

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-01-15.

Go Middleware related posts


What are some of the best open-source Middleware projects in Go? This list will help you:

Project Stars
1 Gin 54,613
2 Iris 21,697
3 Echo 21,442
4 mux 15,826
5 chi 10,750
6 resty 5,503
7 KrakenD 4,805
8 go-grpc-middleware 4,242
9 goku_lite 2,789
10 alice 2,441
11 gin-swagger 2,036
12 secure 1,863
13 martian 1,603
14 Faygo 1,556
15 handlers 1,333
16 nosurf 1,221
17 grpc-tools 1,019
18 gentleman 931
19 gziphandler 739
20 gorilla/csrf 734
21 gin-boilerplate 666
22 mortar 589
23 gongular 447
Find remote jobs at our new job board 99remotejobs.com. There are 29 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
OPS - Build and Run Open Source Unikernels
Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.