A list of Go frameworks, libraries and software of MY choice, like http://awesome-go.com/
- labstack/echo A fast and unfancy micro web framework for Golang.
- LYY/echo-middleware My own collection of echo middlewares.
- kataras/iris Fast, unopinionated, minimalist web framework for Go. Built on top of fasthttp, up to 20x faster than the rest. http://iris-go.com.
- go-chi/chi Lightweight, idiomatic and composable router for building Go HTTP services.
- gorilla/session gorilla/sessions provides cookie and filesystem sessions and infrastructure for custom session backends.
- boj/redistore Redis store sessions.
- justinas/nosurf CSRF protection middleware for Go.
- josephspurrier/csrfbanana Golang CSRF Protection for gorilla/sessions.
- gorilla/websocket A WebSocket implementation for Go.
- graarh/golang-socketio Golang socket.io client and server.
- volatiletech/authboss The boss of http auth.
- go-playground/validator 💯Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving.
- asaskevich/govalidator [Go] Package of validators and sanitizers for strings, numerics, slices and structs.
- dgrijalva/jwt-go Golang implementation of JSON Web Tokens (JWT).
- qor/qor QOR is a set of libraries written in Go that abstracts common features needed for business applications, CMSs, and E-commerce systems.
- name5566/leaf A game server framework in Go (golang).
- jinzhu/gorm The fantastic ORM library for Golang, aims to be developer friendly.
- go-pg/pg Fast PostgreSQL client and ORM for Golang.
- go-kit/kit A standard library for microservices.
- tuneinc/truss Truss helps you build go-kit microservices without having to worry about writing or maintaining boilerplate code.
- kujtimiihoxha/kit GoKit CLI.
- go-sql-driver/mysql Mysql database driver for go.
- HouzuoGuo/tiedot Your NoSQL database powered by Golang.
- siddontang/ledisdb A high performance NoSQL powered by Go.
- rainycape/memcached High performance memcache client in Go (golang).
- garyburd/redigo Redigo is a Go client for the Redis database.
- go-redis/redis Redis client for Golang.
- pingcap/tidb TiDB is a distributed HTAP database compatible with MySQL protocol.
- cockroachdb/cockroach CockroachDB - the open source, cloud-native SQL database.
- prometheus/prometheus The Prometheus monitoring system and time series database.
- boltdb/bolt An embedded key/value database for Go.
- golang/groupcache groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.
- patrickmn/go-cache An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications.
- tidwall/gjson Get JSON values quickly - JSON Parser for Go.
- pquerna/ffjson faster JSON serialization for Go.
- bitly/go-simplejson a Go package to interact with arbitrary JSON.
- mailru/easyjson Fast JSON serializer for golang.
- franela/goreq Minimal and simple request library for Go language.
- levigross/grequests A Go "clone" of the great and famous Requests library.
- sethgrid/pester Go (golang) http calls with retries and backoff.
- nsqio/nsq A realtime distributed messaging platform.
- youzan/nsq A nsq fork by youzan, add some useful features.
- nats-io/go-nats Golang client for NATS, the cloud native messaging system.
- golang/mock GoMock is a mocking framework for the Go programming language.
- stretchr/testify A toolkit with common assertions and mocks that plays nicely with the standard library.
- Selvatico/go-mocket Go GORM & SQL mocking library.
- Sirupsen/logrus Structured, pluggable logging for Go.
- uber-go/zap Blazing fast, structured, leveled logging in Go.
- inconshreveable/log15 Structured, composable logging for Go.
- rs/zerolog Zero Allocation JSON Logger.
- golang/dep Go dependency management tool.
- moovweb/gvm Go Version Manager.
- UnnoTed/fileb0x A better customizable tool to embed files in go; update embedded files remotely without restarting the server.
- robfig/cron A cron library for go.
- bamzi/jobrunner Framework for performing work asynchronously, outside of the request flow.
- jrallison/go-workers Sidekiq compatible background workers in golang.
- alecthomas/kingpin A Go (golang) command line and flag parser.
- nathanjsweet/zsocket Zero-copy sockets for Linux in Golang.
- miekg/dns DNS library in Go.
- cyfdecyf/cow HTTP proxy written in Go. COW can automatically identify blocked sites and use parent proxies to access.
- inconshreveable/ngrok Introspected tunnels to localhost.
- shell909090/goproxy A tunnel proxy for GFW.
- mholt/caddy Fast, cross-platform HTTP/2 web server with automatic HTTPS.
- go-gitea/gitea Gitea: Git with a cup of tea.
- gogits/gogs Gogs is a painless self-hosted Git service.
- ungerik/go-dry DRY (don't repeat yourself) package for Go.
- cznic/sortutil Utilities supplemental to the Go standard "sort" package.
- emirpasic/gods Go Data Structures. Tags: Containers, Sets, Lists, Stacks, Maps, Trees, HashSet, TreeSet, ArrayList, SinglyLinkedList, DoublyLinkedList, LinkedListStack, ArrayStack, HashMap, TreeMap, RedBlackTree, BinaryHeap, Comparator, Sort.
- metakeule/fmtdate MS Excel (TM) syntax for Go time/date.
- leekchan/timeutil useful extensions (Timedelta, Strftime, ...) to the golang's time package.
- acsellers/inflections A similar set of functionality to ActiveSupport's Inflections methods. Could be useful in building an interface to a Rails managed database schema.
- PuerkitoBio/goquery A little like that j-thing, only in Go.
- jessevdk/go-flags Go command line option parser, provides much more functionality and nicer formatting then the builtin flag library of go.
- shirou/gopsutil psutil for golang.
- u-root/u-root A universal root: u-root creates a root file system (initramfs) containing a busybox-like set of tools in Go.
- bwmarrin/snowflake A very simple to use Go (golang) package to generate or parse Twitter snowflake IDs.
- fatih/structtag Parse and modify Go struct field tags.
- awnumar/memguard Easy and secure handling of sensitive memory, in pure Go.
- cespare/xxhash A Go implementation of the 64-bit xxHash algorithm (XXH64).
- imdario/mergo Mergo: merging Go structs and maps since 2013.
- jung-kurt/gofpdf A PDF document generator with high level support for text, drawing and images.
- mkouhei/gosh Interactive shell for Golang.
- codeskyblue/go-sh Like python-sh, for easy call shell with golang.
- ChimeraCoder/gojson Automatically generate Go (golang) struct definitions from example JSON.
- tealeg/xlsx Google Go (golang) library for reading and writing XLSX files.
- surgemq/surgemq High-Performance MQTT Server and Client Libraries.
- fsnotify/fsnotify Cross-platform file system notifications for Go.
- djherbis/buffer Composable Buffers for Go #golang.
- go-godo/godo Golang build tool in the spirt of rake, gulp.
- glycerine/offheap An off-heap hash-table in Go. Used to be called go-offheap-hashtable, but we shortened it.
- chrislusf/seaweedfs SeaweedFS is a simple and highly scalable distributed file system.
- gogo/protobuf Protocol Buffers for Go with Gadgets.
- sony/gobreaker Circuit Breaker implemented in Go.
- thoas/go-funk A modern Go utility library which provides helpers (map, find, contains, filter, ...).
- viant/toolbox Toolbox - go utility library.
- henrylee2cn/pholcus [Crawler framework (golang)] Pholcus is pure golang crawler software, use single/server/client mods with web GUI support. Chinese Wiki.
- henrylee2cn/pholcus_lib Public pholcus rules.
- go-swagger/go-swagger Swagger 2.0 implementation for go https://goswagger.io.
- derekparker/delve Delve is a debugger for the Go programming language.
- uber/go-torch Stochastic flame graph profiler for Go programs.