Open-source Go projects categorized as HTTP

Top 23 Go HTTP Projects

  • GitHub repo Caddy

    Fast, multi-platform web server with automatic HTTPS

    Project mention: Supporting Let’s Encrypt, the nonprofit making HTTPS free for all | news.ycombinator.com | 2021-06-14

    first off, let me say, for me. I use Caddy (https://caddyserver.com/) and it just works. You start it, it gets a cert from letsencrypt and starts serving https. So it was (almost) zero work to serve with https.

    As for reasons to encrypt

    1. Prevents (I think) ISPs in the middle from injecting ads, spyware, phishing scams, etc on top of your site.

    2. Prevents 3rd parties from seeing what pages the user is accessing. Some people would prefer that other's can not read over their shoulder and see what they're reading.

    I know for me, I'm sensitive to that particular issue to the point that I don't really want to use Netflix, Amazon Prime, Spotify, etc. I really don't like the idea that they're building a profile of me based on what I watch and thinking they know who I am based on that.

    It could be as simple as I don't want it known if I'm reading liberal or conservative blogs.

    I'm sure others might have other reasons they don't want a 3rd party to know what specific pages they're reading.


    ps: I get there are other ways to track me but I'm fairly confident that I'm avoiding most of them via HTTPS, VPNs, Private browser windows, multiple profiles, 3rd party cookies off, ad blockers, etc....

  • GitHub repo Vegeta

    HTTP load testing tool and library. It's over 9000!

    Project mention: How to measure the number of requests a node.js application is receiving per second? | reddit.com/r/node | 2021-06-05
  • GitHub repo mux

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

    Project mention: What's your favourite (go) web framework? | reddit.com/r/golang | 2021-06-13

    Favourite's hard to define, standard library can be a bit bare bones (you need to reinvent the wheel a few times for common tasks) and gorilla/mux can be a bit bloated (it's as close as "batteries included" as you're going to get)

  • GitHub repo kratos

    A Go framework for microservices.

    Project mention: Don't Panic: Catching Panics in Errgroup | dev.to | 2021-01-16

    Kratos errgroup

  • GitHub repo httprouter

    A high performance HTTP request router that scales well

    Project mention: What's your favourite (go) web framework? | reddit.com/r/golang | 2021-06-13

    For me, the middle ground is best, chi, gin, httprouter are the sweetspot. But that's based on skills, style, and requirements (and experience - I've used all the ones I have mentioned in anger)

  • GitHub repo wuzz

    Interactive cli tool for HTTP inspection

  • GitHub repo chi

    lightweight, idiomatic and composable router for building Go HTTP services

    Project mention: What is the starting point of web development in golang? | reddit.com/r/golang | 2021-06-17

    Here is link number 1 - Previous text "chi"

  • GitHub repo inlets

    Cloud Native Tunnel

    Project mention: are there any open source microservice projects for a home user? | reddit.com/r/kubernetes | 2021-05-24

    Also if you're looking to self host something checkout inlets: https://docs.inlets.dev/#/

  • GitHub repo up

    Deploy infinitely scalable serverless apps, apis, and sites in seconds to AWS.

    Project mention: Ask HN: Does anyone else find the AWS Lambda developer experience poor? | news.ycombinator.com | 2021-04-18

    I can also recommend serverless.com framework for local development and running lambdas offline.

    AWS provides a docker image for emulating DynamoDB which works great for local dev and will commonly be paired with lambdas.

    Another option I have used recently for implementing node web services is https://github.com/apex/up which also has a nice local dev experience.

  • GitHub repo chisel

    A fast TCP/UDP tunnel over HTTP (by jpillora)

    Project mention: Microsoft SE started to flag all chisel versions as a hacking tool | news.ycombinator.com | 2021-06-16
  • GitHub repo RoadRunner

    High-performance PHP application server, load-balancer and process manager written in Golang

    Project mention: Exotic/unknown frameworks? | reddit.com/r/PHP | 2021-05-28

    Edit: It can't do hot reload, especially not in docker containers. So unfortunately another one that I can't use. I'd love some genuinely good option beyond php-fpm.

  • GitHub repo hetty

    Hetty is an HTTP toolkit for security research.

    Project mention: Gopher Gold #14 - Wed Oct 07 2020 | dev.to | 2020-10-07

    dstotijn/hetty (Go): Hetty is an HTTP toolkit for security research. It aims to become an open source alternative to commercial software like Burp Suite Pro, with powerful features tailored to the needs of the infosec and bug bounty community.

  • GitHub repo statik

    Embed files into a Go executable

    Project mention: Belajar dan Berkenalan dengan Go Embed | dev.to | 2021-05-05
  • GitHub repo bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

    Project mention: What's the fastest template parser in Go? | dev.to | 2020-10-01


  • GitHub repo easegress

    A Cloud Native traffic orchestration system

    Project mention: Easegress: An all-rounder traffic orchestration system | news.ycombinator.com | 2021-06-16
  • GitHub repo fortio

    Fortio load testing library, command line tool, advanced echo server and web UI in go (golang). Allows to specify a set query-per-second load and record latency histograms and other useful stats.

  • GitHub repo sish

    HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH.

    Project mention: SSH Jump host / port forwarder, anonymous service + source + alternative | reddit.com/r/selfhosted | 2021-03-24

    Source code: https://bitbucket.org/ValdikSS/dropbear-sshj/ After I made the PoC modifications and setup the server on SSH-J.com, I found functionally better and mature project called sish. https://github.com/antoniomika/sish

  • GitHub repo hoverfly

    Lightweight service virtualization/API simulation tool for developers and testers

  • GitHub repo httpexpect

    End-to-end HTTP and REST API testing for Go.

    Project mention: Hacktoberfest: 69 Beginner-Friendly Projects You Can Contribute To | dev.to | 2020-09-29

    https://github.com/gavv/httpexpect End-to-end HTTP and REST API testing for Go.

  • GitHub repo Armor

    Uncomplicated, modern HTTP server

  • GitHub repo faasd

    A lightweight & portable faas engine

    Project mention: I wrote a Twitter Bot using OpenFaaS to avoid missing out on CfP deadlines | news.ycombinator.com | 2021-06-08

    I didn't write this blog post, but helped Carlos with some editing. It was great chatting to him about how he planned it out and got it up and running in a short period of time.

    If you're wanting to keep your infrastructure lean, you can use OpenFaaS on a single VM with "faasd" instead of K3s/K8s.


  • 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 gock

    HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽

    Project mention: Go Package for Mocking HTTP Traffic: github.com/h2non/gock | dev.to | 2021-04-16

    Last time I covered testing in Go I mentioned a package used for testing equality called github.com/google/go-cmp, this time I will share with you a way to mock HTTP traffic using the package github.com/h2non/gock.

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 2021-06-17.


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

Project Stars
1 Caddy 33,642
2 Vegeta 17,502
3 mux 14,542
4 kratos 12,907
5 httprouter 12,798
6 wuzz 9,630
7 chi 9,533
8 inlets 8,290
9 up 8,233
10 chisel 5,955
11 RoadRunner 5,677
12 hetty 3,393
13 statik 3,199
14 bombardier 2,677
15 easegress 2,227
16 fortio 1,933
17 sish 1,762
18 hoverfly 1,748
19 httpexpect 1,701
20 Armor 1,626
21 faasd 1,535
22 martian 1,511
23 gock 1,385
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives