Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Gin
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.
-
gonum
Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
https://github.com/go-chi/chi - when net/http is not enough this is the router I use. gorilla/mux is slow, didn't bother trying anything else after chi.
It depends on what you would like to do with Go, but good starting points could be https://awesomeopensource.com/projects/go and may have a look at https://github.com/avelino/awesome-go .
https://github.com/rs/zerolog - one of the best structural logging library
https://github.com/nhooyr/websocket - websocket implementation. Recently migrated to it from gorilla/websocket. Nicer API and faster but nothing really wrong with gorilla. Just wanted to try something new.
https://github.com/jackc/pgx - excellent library for Postgre. Especially if you need PSQL specific features
github.com/doug-martin/goqu - SQL query builder. Don't like ORMs in general, didn't like GORM. The API is a bit verbose but it does the job and supports tons of SQL features including database specific ones.
github.com/pkg/errors - don't like how wrapping is done in standard library. This is better. Been using this library forever and it's even compatible with recent standard library changes.
github.com/stretchr/testify - very useful for tests
https://github.com/gin-gonic/gin - My goto framework for writing microservices
https://github.com/golang/mock - Auto generate mocks from interfaces for unit testing
https://github.com/gonum/gonum - Contains almost everything one needs for numerical analysis. The guys over there are porting LAPACK to pure Go with explicit tests.
https://github.com/jmoiron/sqlx : Great extension of the standard database/sql package, but 100% compatible with it
Because I like hashicorp's multierror, I created https://github.com/andrewstuart/multierrgroup which basically provides the same API but returns all errors encountered, if any.
Related posts
- Build a Golang Todo App Backend: A Step-by-Step Guide
- REST API with Go, Chi, MySQL and sqlx
- Authentication system using Golang and Sveltekit - Initialization and setup
- Does Go need overcoding for tasks that other languages can execute in one liners (or with less code)?
- Which framework and ORM should we choose?