22 Golang libraries you need to know

22 Golang Libraries you need to know

Did you have a situation when you lost a ton of time finding a Go library for your need? In theory, you can checklists like Awesome Go or make a choice based on GitHub stars. But Awesome Go contains over 2600 libraries, and popularity is not always the best indicator of library quality. I often thought that it would be great to have a place where I could find just the best and battle-tested libraries I could use in my project. Because we didn’t find such a place with Miłosz, we decided to create it.

Based on our experience leading multiple Go teams and working on various projects, including complex financial, health, and security, we will recommend tools that could work well for different projects.

In addition to providing a list of libraries, we also want to show you some non-obvious uses for those tools and libraries. However, it’s important to note that most of these tools can be misused. We’ve included some common anti-patterns to help you avoid making those mistakes.

This list is intended to be opinionated. We only wanted to include libraries we used on real production systems. Thanks to that, we recommend just libraries we are 100% sure about. Unfortunately, our day is limited to 24 hours, so checking all available libraries is impossible.

If you know of any libraries we should include on this list, please let us know in the comments! We will continue to update the list with new findings over time.