Asked and answered many times in this group and in another popular Go forum:
https://forum.golangbridge.org/search?q=framework Another collection of Go frameworks, tools, packages (libs) can be found in the following GitHub repo: https://github.com/avelino/awesome-go#web-frameworks There are a lot of good frameworks, if that's what you want, but jumping into a framework when you're just learning Go may be premature, especially since Go has such an extensive standard library. https://golang.org/pkg/ If you do use a framework, the one that is "best" is the one that is not only well supported, but appeals to your own development philosophy. Just because a framework is popular, doesn't mean it will be a joy for *"you"* to use, or even fit your particular use case. My first foray into frameworks for Go was the, at the time, hugely popular "Martini" web framework. https://github.com/go-martini/martini It was by far the leader in web frameworks when I first started with Go. However, even the author of that framework later wrote a blog post admitting that he created Martini when he was not a proficient Go developer, that the design was not idiomatic Go, and it should probably not be used. https://web.archive.org/web/20151031022001/http://codegangsta.io/blog/2014/05/19/my-thoughts-on-martini/ Below is a link to the article that prompted the above blog. (The original link in the blog post does not seem to work): https://stephensearles.com/three-reasons-you-should-not-use-martini/ Today, there are better alternatives, but you have to research them; there is no "best". With regard to the list of frameworks you've come up with already, there's one I wouldn't touch, one that I think is too bloated, and one I might consider. Again, these are for personal reasons, so I suggest you learn Go more fully before making a decision. -- Kevin Powick On Saturday, 9 September 2017 19:51:40 UTC-4, Tim Uckun wrote: > > I am in the process of learning go and decided to do it by writing a > (mostly) API based web site. I have been doing some research and have found > the following. > > Revel: https://revel.github.io/ > GoBuffalo: https://gobuffalo.io/ > <https://www.google.com/url?q=https%3A%2F%2Fgobuffalo.io%2F&sa=D&sntz=1&usg=AFQjCNE8jWIABiTUymxTFwwspGXLnTdLMg> > Iris: https://iris-go.com/ > <https://www.google.com/url?q=https%3A%2F%2Firis-go.com%2F&sa=D&sntz=1&usg=AFQjCNHY1MNkTBbtJOE5K-Xlt0eJKtMlcQ> > > In addition there are "toolkits" like chi and buffallo but it looks like > eventually I will need pretty much all the things these frameworks provide > and there are so many competing projects that provide logging, > configuration, routing, middleware etc that it would take me a long time to > do all the research and find the ones most suitable for me. > > I understand that there is quite a bit of controversy with iris so I > probably won't go with that one but does anybody have any experience with > the others they are willing to share? > > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.