A few months ago, I started my journey from PHP to Go on a new app in my company.
Some 3 months after, I posted another Article on DEV talking about my feedbacks on the language.
Now it’s the time to share about the libraries & tools I’ve been using so far. Note that I don’t use any framework nor any ORM. Just the right libraries to do the job.
Libraries
1. Viper
🙋 Purpose: Viper is a full-featured configuration library for production apps
🌠 7,353
spf13/viper
2. Gin Gonic
🙋 Purpose: 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.
🌠 23,913
gin-gonic/gin
3. Mgo
🙋 Purpose: A MongoDB driver for Go
🌠 1,385
globalsign/mgo
4. Zap
🙋 Purpose: Blazing fast, structured, leveled logging in Go
🌠 5,901
uber-go/zap
5. Go.uuid gofrs/uuid
🙋 Purpose: A safe UUID package originally forked from github.com/satori/go.uuid
🌠 394
gofrs/uuid
6. JWT-Go
🙋 Purpose: Golang implementation of JSON Web Tokens (JWT)
🌠 4,849
dgrijalva/jwt-go
7. Testify
🙋 Purpose: Go code (golang) set of packages that provide many tools for testifying that your code will behave as you intend
🌠 6,634
stretchr/testify
8. Go-yaml
🙋 Purpose: YAML support for the Go language
🌠 2,692
go-yaml/yaml
Tools
1. Gomock + mockgen
🙋 Purpose: Gomock is a testing library that allows you to mock your dependencies and to make assertions on them. Mockgen is a CLI tool packaged with gomock to create your mocks.
🌠 2,023
golang/mock
2. Modd
🙋 Purpose: A file watcher allowing you to restart your app, to run your unit tests and much more
🌠 977
cortesi/modd
I hope that you’ll find some of these libs/tools useful for your needs.
Don’t hesitate to propose the ones you find great.
Thank you for reading!