DEV Community

Suri Nuthalapati
Suri Nuthalapati

Posted on • Updated on

What are the Best Go(lang) Frameworks, IDEs & Tools

Top comments (4)

pawda profile image

Here is a popular list of frameworks, tools /everything with go

Personally, I use vscode as IDE with the go plugin and gometalinter.

On a lower level, you might also be interested by the following article from Peter Bourgon on:

Structuring your code and repository, Program configuration, component graph, Goroutine lifecycle management, Observability, Testing, Interfaces, Context use and misuse

Cheers !

quii profile image
Chris James • Edited

Try to avoid using frameworks with Go unless you really know you need them.

Most people are very productive just using the standard library and including a few libraries for specific things.

And I say just use the standard library but don't take it flippantly. Go has one of the best standard libraries I've ever used. If you really want to be a strong Go developer invest your time in learning it as best you can. Explore net/http, io and strings in particular. Go has a backward compatibility guarantee so anything you learn in the standard library is permanent, unlike any framework you might commit to.

For the IDE, I would try and stick to what you're used to, Go has good support for most environments.

Personally I am an intellij person so Goland is very good for me as I already know all the shortcuts. But people are very happy with Vim Go and VSCode with Go too.

Whatever you pick you should be able to quickly (i.e, with a key combination)

  • Run tests
  • Reformat the code automatically
  • Refactor code into functions
  • Rename things
  • Navigate to symbols
  • Auto fix imports (Go does not allow unused imports which beginners get annoyed at, but all you really need is a good editor to automatically fix it for you)

And I of course have to plug my book Learn Go with tests which will take you through most of what you need to know and show you how to make a web application all with the standard library. Whoo!

nickytonline profile image
Nick Taylor

I've only used Go minimally on a project at my previous job, but VS Code with the Go extension, seemed pretty solid, including debugging.

avelino profile image
Thiago Avelino

For lovers (or Anyone who wants to learn from Vim (editor with Go support)