Echo VS go-kit

Compare Echo vs go-kit and see what are their differences.

Our great sponsors
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
  • SaaSHub - Software Alternatives and Reviews
Echo go-kit
36 13
21,148 21,748
1.7% 1.9%
8.1 7.8
5 days ago 5 days ago
Go Go
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Echo

Posts with mentions or reviews of Echo. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-27.
  • Geofence your self-hosted API's
    6 projects | dev.to | 27 Nov 2021
    Since I'm using echo as the web framework to control my decorations, I was able to implement some pretty simple middleware that rejects POST requests from IP addresses that aren't within close proximity to mine with a 403 status code.
  • Ask HN: Simplest stack to build web apps in 2021?
    17 projects | news.ycombinator.com | 22 Nov 2021
    For backend I'd say -> Golang, PostgreSQL, Redis. I've just worked with Vue.js but I've seen some of the React codebases and don't really appreciate that complexity. Vue does a far better job and simplifying things.

    With Golang, you actually don't need a mega framework to get started, you can use small libraries that will do the job for you without doing any magic behind the scenes. (Like, for sure you can use echo[0] but you would probably be happy with mux[1] and it's middlewares itself). And it's not uncommon in Go codebases to repeat yourself. I'd argue that's a much better paradigm than polluting your codebase with 10k indirect dependencies, the garbage that is the Node.js ecosystem.

    [0]: https://echo.labstack.com/

  • 4 Things to Consider When Choosing a Go API Framework
    5 projects | dev.to | 16 Nov 2021
    This can be extremely helpful if you just want to get going and start writing the business logic of your application without having to worry about some of these implementation details however it does come with a price: you're mostly stuck with the framework's choices. Don't like the way that echo formats logs? Tough. Want to use a different router than the one chosen by buffalo? Good Luck.
  • Would it be better to use Frameworks or not ?
    3 projects | reddit.com/r/golang | 25 Oct 2021
    I tried once to only use the standard library for a REST-like api and ended removing all that code and replacing it with a framework (Echo in my case) once i noticed that all that those thousands lines of code that i wrote to handle errors, requests, responses, validations, etc were almost the same to the ones you could find it those frameworks.
  • Which web framework to learn?
    6 projects | reddit.com/r/golang | 20 Oct 2021
    https://echo.labstack.com is fantastic
  • Shit post
    1 project | reddit.com/r/shitposting | 19 Oct 2021
  • Do you guys use frameworks with Go for backend development?
    7 projects | reddit.com/r/golang | 8 Oct 2021
    For REST, I use Echo which bills itself as a Web Framework. So in that sense, yes. In the sense of something overarching like Java's Spring Framework, no.
  • BunRouter: Zero allocations HTTP router for Go
    2 projects | reddit.com/r/golang | 7 Oct 2021
    It's looks exactly like Echo? Even the landing page is similar: https://echo.labstack.com/
  • I can not find where this log is happening...
    1 project | reddit.com/r/golang | 29 Sep 2021
    It’s Echo itself that logs incoming requests. https://github.com/labstack/echo/issues/1017
  • Go, Kafka and gRPC clean architecture CQRS microservices with Jaeger tracing 👋🧑‍💻
    14 projects | dev.to | 29 Aug 2021
    In this article let's try to create closer to real world CQRS microservices with tracing and monitoring using: 🚀 Kafka as messages broker gRPC Go implementation of gRPC PostgreSQL as database Jaeger open source, end-to-end distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus MongoDB Web and API based SMTP testing Redis Type-safe Redis client for Golang swag Swagger for Go Echo web framework

go-kit

Posts with mentions or reviews of go-kit. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-15.
  • Fun with generics: REST HTTP handler proof-of-concept
    3 projects | reddit.com/r/golang | 15 Nov 2021
    This comes dangerously close to functional services as popularized by Twitter et al and encapsulated in the well known Finagle library. I don’t know but I strongly suspect /u/peterbourgon was heavily influenced by this while developing the notion of Endpoints in his reasonably well known go-kit library, although it’s significantly less general due mostly to limitations in Go’s type system.
  • Is there any course for leaning MicroService with Golang? Thanks.
    1 project | reddit.com/r/golang | 7 Nov 2021
    I think go-kit would be a good starting point.
  • Protocols and Composition in Python
    3 projects | dev.to | 4 Nov 2021
    I first learned of this pattern in Go's go-kit where I've seen it called "service middlewares". The Design Patterns book describes something similar as the "decorator" pattern - not to be confused with Python decorators, which have the unfortunate property of melding themselves with what they decorate, which limits their practical usefulness, at least as far as reducing coupling is concerned.
  • Do you guys use frameworks with Go for backend development?
    7 projects | reddit.com/r/golang | 8 Oct 2021
    Go kit is a good backend development toolkit ... but not a framework.
  • Peter Bourgon: I have been permanently banned from all Golang community spaces
    1 project | news.ycombinator.com | 16 Sep 2021
    I recognize him for his efforts to bring Go to the enterprise world with https://gokit.io/ and public speaking, rooting for Go, when Go was not as prominent as it is today.

    I don’t know the reasons why he got banned, but it is irritating.

  • Scala or Go: Who Wore It Better?
    7 projects | dev.to | 6 Sep 2021
    After Go took off at Google and was released to the public, it got really popular as the language of concurrency, which helped in turn to make it the language of DevOps--particularly in concert with Kubernetes, which also emerged from Google. Go has expanded into other domains as well with the CMS Hugo and the microservices framework Go kit.
  • Should I learn Golang or use Ansible to delveop the operators?
    8 projects | reddit.com/r/kubernetes | 19 Aug 2021
    What's great is there are really great patterns to follow out there on github (both code patterns https://github.com/tmrts/go-patterns and examples https://github.com/avelino/awesome-go https://github.com/go-kit/kit and for the app itself, https://github.com/golang-standards/project-layout )... and for me a really naggy mentor who insists everything be "idiomatic go"
  • Questions on linters
    3 projects | reddit.com/r/golang | 29 Jun 2021
    For more background and discussion, including several demonstrations of error handling decorators, please see Go kit issue #164, Explain why Logger.Log returns error.
  • Show HN: We wrote a book about building business applications in Go
    7 projects | news.ycombinator.com | 13 May 2021
    Thanks for mentioning this experience -- I was really excited about Go early on but went with other languages after a while so didn't make any huge projects with it (and definitely not at a large employer/go shop).

    Did you have to do a lot of stuff that is DDD-related? Like building out abstractions for adapters and connection points, or did you use libraries that did that part for you mostly? I know of some stuff out there like go kit[0] which is quite pragmatic and does some of the 80% use-cases (serialization, transports, etc) DDD stuff for you.

    I think for the most part it's rare to actually need to write a lot of your own DDD pieces for CRUD-y apps, and the parts where the complexity would be worth it are often already done for you by the libraries/frameworks used.

    [0]: https://gokit.io/

  • Show HN: Encore – Go framework for distributed systems
    6 projects | news.ycombinator.com | 14 Apr 2021

What are some alternatives?

When comparing Echo and go-kit you can also consider the following projects:

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.

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

Fiber - ⚡️ Express inspired web framework written in Go

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 |

Beego - beego is an open-source, high-performance web framework for the Go programming language.

Revel - A high productivity, full-stack web framework for the Go language.

goa - Design-based APIs and microservices in Go

httprouter - A high performance HTTP request router that scales well

Buffalo - Rapid Web Development w/ Go

GoSwagger - Swagger 2.0 implementation for go