When comparing Goji vs Gin-gonic, the Slant community recommends Gin-gonic for most people. In the question“What are the best web frameworks for Go?” Gin-gonic is ranked 1st while Goji is ranked 10th. The most important reason people chose Gin-gonic is:
The documentation for Gin is broad and comprehensive. Most tasks that you will need to do relating to the router can be found easily in the docs.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Great performance
Goji is an abstraction layer over the standard Go library (which has support for HTTP) and added Einhorn support. There's probably very little you can do with Goji that you can't do with the standard library and a bit of elbow grease.
This makes Goji an extremely lightweight and fast framework.
Pro Socket manager integration
Goji integrates with Einhorn, which is a language agnostic socket manager. Making it possible to have websocket support in Goji.
Pro Extensive documentation
The documentation for Gin is broad and comprehensive. Most tasks that you will need to do relating to the router can be found easily in the docs.
Pro Good for building REST APIs
Gin is a pretty minimalistic framework. Only the most essential features and libraries are included, making Gin a great framework for developing high-performance REST APIs.
Pro Well-tested and numerous middlewares
The Gin community has created numerous well-tested middlewares that make developing for Gin a charm. Features include gzip, an authorization middleware, and sentry.
Pro High performance
Gin runs 40x faster than Martini, and runs comparatively well compared to other Golang frameworks.
Cons
Con Doesn't add a lot of functionality on top of the standard library
Most of the tasks that Goji is used for can be completed with standard library support without adding the overhead of an additional external library and without having the risk of Goji development being abandoned one day.
Con Might not be suitable for large backend applications
Gin-gonic is great for building a REST API for the backend if you want to develop an SPA using a frontend framework. But for anything that requires more features on the server side, it would be better to use a more "batteries included" framework.
