|13 days ago||4 days ago|
|MIT License||MIT License|
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.
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 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.
Show HN: Encore – Go framework for distributed systems
6 projects | news.ycombinator.com | 14 Apr 2021
Which web framework would you recommend?
4 projects | reddit.com/r/golang | 3 Dec 2021
I'm a big fan of go-chi. Their documentation and examples are top-notch.
4 Things to Consider When Choosing a Go API Framework
5 projects | dev.to | 16 Nov 2021
Eli Bendersky has an excellent series where they walk you through building a REST API in Go by first starting with the standard library and then introducing a router such as gorilla or chi and finally switching over to using a complete web framework. This series shows some of the downsides of sticking with the standard library entirely and how extra libraries such as the two router packages above can be extremely helpful.
Would it be better to use Frameworks or not ?
3 projects | reddit.com/r/golang | 25 Oct 2021
If you purely build a rest api using core modules will get you pretty far. There are multiple small wrappers out there that provide better routing and possibly a nicer api. As an example https://github.com/go-chi/chi is only 1K LOC and compatible with handleFunc.
Release v2.20.0 · gofiber/fiber
2 projects | reddit.com/r/golang | 6 Oct 2021
I really like chi. Feels like an extension for the go http lib
Migrating from PHP to Go
26 projects | reddit.com/r/golang | 30 Sep 2021
https://github.com/go-chi/chi for routing, it has a nice interface, and is extremely light on resources (not a big deal for a router, but if it's available with a nice API, why not?26 projects | reddit.com/r/golang | 30 Sep 2021
I'm a big fan of [Twirp RPC](https://github.com/twitchtv/twirp), and [go-chi/chi](https://github.com/go-chi/chi) if I need to provide REST endpoints, authentication or other routing middleware. The "gorilla" set of packages are also useful, I always reach for gorilla/websocket if I need to do some websocket work. You can look at an example service in [go-bridget/notify](https://github.com/go-bridget/notify) - the main files to look at are under rpc/notify/notify.proto/.go, and the implementation which you write is under server/notify. If you'd create database drivers, I'd create a package under server/notify/mysql (for example), and then implement an interface for data retrieval/settings. It's on the todolist, if I'll ever need to implement anything other than JWT, or Redis. Comment if you have any questions or notes.
Router/mux for golang.
1 project | reddit.com/r/golang | 5 Sep 2021
I’m personally a fan of chi router. Fast, works with standard http package handlers.
What are your favorite packages to use?
chi for routing
Chi HTTP Router
Here is link number 2 - Previous text "Chi"
What are some alternatives?
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 🦍
Echo - High performance, minimalist Go web framework
httprouter - A high performance HTTP request router that scales well
Fiber - ⚡️ Express inspired web framework written in Go
goa - Design-based APIs and microservices in Go
GoSwagger - Swagger 2.0 implementation for go
Gizmo - A Microservice Toolkit from The New York Times
Beego - beego is an open-source, high-performance web framework for the Go programming language.
negroni - Idiomatic HTTP Middleware for Golang