disintegration/imaging
Imaging is a simple image processing package for Go
fogleman/gg
Go Graphics - 2D rendering in Go with a simple API.
skip2/go-qrcode
:sparkles: QR Code encoder (Go)
jung-kurt/gofpdf
A PDF document generator with high level support for text, drawing and images
nfnt/resize
Pure golang image resizing
ajstarks/svgo
Go Language Library for SVG generation
guptarohit/asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
tdewolff/canvas
Cairo in Go: vector to raster, SVG, PDF, EPS, WASM, OpenGL, Gio, etc.
disintegration/gift
Go Image Filtering Toolkit
h2non/bimg
Go package for fast high-level image processing powered by libvips C library

fogleman/fauxgl
Software-only 3D renderer written in Go.
go-gl/gl
Go bindings for OpenGL (generated via glow)
vulkan-go/vulkan
Vulkan API bindings for Go programming language
go-gl/glfw
Go bindings for GLFW 3
tfriedel6/canvas
Canvas is a Go drawing library based on OpenGL or using software rendering that is very similar to the HTML5 canvas API
qmuntal/gltf
Go library for encoding glTF 2.0 files
goxjs/gl
Go cross-platform OpenGL bindings.
hunterloftis/pbr
a Physically Based Renderer (PBR) in Go
faiface/glhf
openGL Have Fun - A Go package that makes life with OpenGL enjoyable.
fogleman/simplify
3D mesh simplification in Go.

allegro/bigcache
Efficient cache for gigabytes of data written in Go.
deckarep/golang-set
A simple, battle-tested and generic set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp.
google/btree
BTree provides a simple, ordered, in-memory data structure for Go programs.
hashicorp/go-immutable-radix
An immutable radix tree implementation in Golang
cornelk/hashmap
A Golang lock-free thread-safe HashMap optimized for fastest read access.
tidwall/btree
B-tree implementation for Go
armon/go-radix
Golang implementation of Radix trees
axiomhq/hyperloglog
HyperLogLog with lots of sugar (Sparse, LogLog-Beta bias correction and TailCut space reduction) brought to you by Axiom
mitchellh/hashstructure
Get hash values for arbitrary values in Go (golang).
gammazero/deque
Fast ring-buffer deque (double-ended queue)

bwmarrin/discordgo
(Golang) Go bindings for Discord
stripe/stripe-go
Go library for the Stripe API.
vmware/govmomi
Go library for the VMware vSphere API
minio/minio-go
MinIO Go client SDK for S3 compatible object storage
xanzy/go-gitlab
GitLab Go SDK
cloudflare/cloudflare-go
The official Go library for the Cloudflare API
digitalocean/godo
DigitalOcean Go API client
andygrunwald/go-jira
Go client library for Atlassian Jira
firebase.google.com/go
Firebase Admin Go SDK
slack-go/slack
Slack API in Go

elazarl/go-bindata-assetfs
Serves embedded files from `jteeuwen/go-bindata` with `net/http`
markbates/pkger
Embed static files in Go binaries (replacement for gobuffalo/packr)
jteeuwen/go-bindata
Hard fork of jteeuwen/go-bindata because it disappeared, Please refer to issues#5 for details.
go-bindata/go-bindata
Turn data file into go code.
gin-contrib/static
Static middleware
jessevdk/go-assets
Simple embedding of assets in go
progrium/go-basher
Library for writing hybrid Go and Bash programs
kevinburke/go-bindata
A small utility which generates Go code from any file. Useful for embedding binary data in a Go program.
phogolabs/parcello
Golang Resource Bundler [deprecated]
knadh/stuffbin
Compress and embed static files and assets into Go binaries and access them with a virtual file system in production

faiface/beep
A little package that brings sound to any Go application. Suitable for playback and audio-processing.
olahol/melody
:notes: Minimalist websocket framework for Go
gordonklaus/portaudio
Go bindings for the PortAudio audio I/O library
hajimehoshi/go-mp3
An MP3 decoder in pure Go
dhowden/tag
ID3, MP4 and OGG/FLAC metadata parsing in Go
go-audio/wav
Battle tested Wav decoder/encoder
go-audio/audio
Generic Go package designed to define a common interface to analyze and/or process audio data
mewkiz/flac
Package flac provides access to FLAC (Free Lossless Audio Codec) streams.
gen2brain/malgo
Mini audio library
gomidi/midi
Library for reading and writing of MIDI messages and MIDI files (SMF) with Go

casbin/casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Golang: https://discord.gg/S5UjpzGZjN
gorilla/sessions
Package gorilla/sessions provides cookie and filesystem sessions and infrastructure for custom session backends.
markbates/goth
Package goth provides a simple, clean, and idiomatic way to write authentication packages for Go web applications.
dgrijalva/jwt-go
ARCHIVE - Golang implementation of JSON Web Tokens (JWT). This project is now maintained at:
ory/ladon
A SDK for access control policies: authorization for the microservice and IoT age. Inspired by AWS IAM policies. Written for Go.
ory/fosite
Extensible security first OAuth 2.0 and OpenID Connect SDK for Go.
gorilla/securecookie
Package gorilla/securecookie encodes and decodes authenticated and optionally encrypted cookie values for Go web applications.
crewjam/saml
SAML library for go
mikespook/gorbac
goRBAC provides a lightweight role-based access control (RBAC) implementation in Golang.
openshift/osin
Golang OAuth2 server library

ethereum/go-ethereum
Go implementation of the Ethereum protocol
lightninglabs/neutrino
Privacy-Preserving Bitcoin Light Client
tyler-smith/go-bip39
The BIP39 library for Go.
btcsuite/btcutil
Provides bitcoin-specific convenience functions and types
eoscanada/eos-go
EOS.IO Go API library
iov-one/weave
Easy-to-use SDK to build Tendermint ABCI applications
miguelmota/go-ethereum-hdwallet
Ethereum HD Wallet derivations in Go (golang)
lightningnetwork/lnd
Lightning Network Daemon ⚡️
lightningnetwork/lightning-onion
Onion Routed Micropayments for the Lightning Network
gagliardetto/solana-go
Go SDK library and RPC client for the Solana Blockchain

CLI

1.1k

spf13/cobra
A Commander for modern Go CLI interactions
urfave/cli
A simple, fast, and fun package for building command line apps in Go
c-bata/go-prompt
Building powerful interactive prompts in Go, inspired by python-prompt-toolkit.
spf13/pflag
Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
jessevdk/go-flags
go command line option parser
alecthomas/kong
Kong is a command-line parser for Go
manifoldco/promptui
Interactive prompt for command-line applications
alexflint/go-arg
Struct-based argument parsing in Go
chzyer/readline
Readline is a pure go(golang) implementation for GNU-Readline kind library
mitchellh/cli
A Go library for implementing command-line interfaces.

dave/dst
Decorated Syntax Tree - manipulate Go source with perfect fidelity.
smacker/go-tree-sitter
Golang bindings for tree-sitter https://github.com/tree-sitter/tree-sitter
hhatto/gocloc
A little fast cloc(Count Lines Of Code)
reviewdog/reviewdog
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
google/licensecheck
The licensecheck package classifies license files and heuristically determines how well they correspond to known open source licenses.
sourcegraph/syntaxhighlight
Go package for syntax highlighting of code
client9/misspell
Correct commonly misspelled English words in source files
sabhiram/go-gitignore
A gitignore parser for go
rhysd/actionlint
:octocat: Static checker for GitHub Actions workflow files
sourcegraph/go-lsp
Go types for the messages used in the Language Server Protocol.

Compression and archives

mholt/archiver
DEPRECATED. Please use mholt/archives instead.
golang/snappy
The Snappy compression format in the Go programming language.
pierrec/lz4
LZ4 compression and decompression in pure Go
klauspost/pgzip
Go parallel gzip (de)compression
andybalholm/brotli
Pure Go Brotli encoder and decoder
ulikunitz/xz
Pure golang package for reading and writing xz-compressed files
valyala/gozstd
go wrapper for zstd
bkaradzic/go-lz4
Port of LZ4 lossless compression algorithm to Go
alexmullins/zip
Fork of Go's archive/zip to add reading/writing of password protected zip files.
gen2brain/go-unarr
Go bindings for unarr (decompression library for RAR, TAR, ZIP and 7z archives)

oklog/run
A universal mechanism to manage goroutine lifecycles
jasonlvhit/gocron
A Golang Job Scheduling Package.
go.uber.org/ratelimit
A Go blocking leaky-bucket rate limit implementation
gocraft/work
Process background jobs in Go
gammazero/workerpool
Concurrency limiting goroutine pool
sasha-s/go-deadlock
Online deadlock detection in go (golang)
eapache/channels
Golang channel helpers and special types
jrallison/go-workers
Sidekiq compatible background workers in golang
benmanns/goworker
goworker is a Go-based background worker that runs 10 to 100,000* times faster than Ruby-based workers.
alitto/pond
🔘 Minimalistic and High-performance goroutine worker pool written in Go

spf13/viper
Go configuration with fangs
kelseyhightower/envconfig
Golang library for managing configuration data from environment variables
joho/godotenv
A Go port of Ruby's dotenv library (Loads environment variables from .env files)
go-ini/ini
Package ini provides INI file read and write functionality in Go
knadh/koanf
Simple, extremely lightweight, extensible, configuration management library for Go. Supports JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.
jinzhu/configor
Golang Configuration tool that support YAML, JSON, TOML, Shell Environment
ilyakaznacheev/cleanenv
✨Clean and minimalistic environment configuration reader for Golang
sethvargo/go-envconfig
A Go library for parsing struct tags from environment variables.
magiconair/properties
Java properties scanner for Go
go.uber.org/config
Configuration for Go applications

Containers and Kubernetes

containerd/containerd
An open and reliable container runtime
fsouza/go-dockerclient
Go client for the Docker Engine API.
containers/buildah
A tool that facilitates building OCI images.
containers/storage
Container Storage Library
samalba/dockerclient
Docker client library in Go
regclient/regclient
Docker and OCI Registry Client in Go and tooling using those libraries.
opencontainers/umoci
umoci modifies Open Container images
containerd/go-runc
runc bindings for Go
portainer/agent
The Portainer agent

square/go-jose
An implementation of JOSE standards (JWE, JWS, JWT) in Go
google/certificate-transparency-go
Auditing for TLS certificates (Go code)
minio/sha256-simd
Accelerate SHA256 computations in pure Go using AVX512, SHA Extensions for x86 and ARM64 for ARM. On AVX512 it provides an up to 8x improvement (over 3 GB/s per core). SHA Extensions give a performance boost of close to 4x over native.
gtank/cryptopasta
copy & paste-friendly golang crypto
keybase/saltpack
a modern crypto messaging format
minio/highwayhash
Native Go version of HighwayHash with optimized assembly implementations on Intel and ARM. Able to process over 10 GB/sec on a single core on Intel CPUs - https://en.wikipedia.org/wiki/HighwayHash
miekg/pkcs11
pkcs11 wrapper for Go
flynn/noise
Go implementation of the Noise Protocol Framework
alexedwards/argon2id
Argon2id password hashing and verification for Go
kevinburke/nacl
Pure Go implementation of the NaCL set of API's

boltdb/bolt
An embedded key/value database for Go.
pingcap/tidb
TiDB - the open-source, cloud-native, distributed SQL database designed for modern applications.
go.etcd.io/bbolt
An embedded key/value database for Go.
hashicorp/raft
Golang implementation of the Raft consensus protocol
hashicorp/go-memdb
Golang in-memory database built on immutable radix trees
patrickmn/go-cache
An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications.
cockroachdb/pebble
RocksDB/LevelDB inspired key-value database in Go
tidwall/buntdb
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support
globalsign/mgo
The MongoDB driver for Go
golang/groupcache
groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.

mattn/go-sqlite3
sqlite3 driver for go using database/sql
jmoiron/sqlx
general purpose extensions to golang's database/sql
lib/pq
Pure Go Postgres driver for database/sql
go-sql-driver/mysql
Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package
go-pg/pg
Golang ORM with focus on PostgreSQL features and performance
rubenv/sql-migrate
SQL schema migration tool for Go.
denisenkom/go-mssqldb
Microsoft SQL server driver written in go language
pingcap/parser
A MySQL Compatible SQL Parser
mattes/migrate
Database migrations. CLI and Golang library.
huandu/go-sqlbuilder
A flexible and powerful SQL string builder library plus a zero-config ORM.

jinzhu/now
Now is a time toolkit for golang
araddon/dateparse
GoLang Parse many date strings without knowing format in advance.
gorhill/cronexpr
Cron expression parser in Go language (golang)
hako/durafmt
:clock8: Better time duration formatting in Go!
uniplaces/carbon
Carbon for Golang, an extension for Time
go-playground/locales
:earth_americas: a set of locales generated from the CLDR Project which can be used independently or within an i18n package; these were built for use with, but not exclusive to https://github.com/go-playground/universal-translator
olebedev/when
A natural language date/time parser with pluggable rules
arran4/golang-ical
A ICS / ICal parser and serialiser for Golang.
teambition/rrule-go
Go library for working with recurrence rules for calendar dates.
leekchan/timeutil
timeutil - useful extensions (Timedelta, Strftime, ...) to the golang's time package

goreleaser/nfpm
nFPM is Not FPM - a simple deb, rpm, apk, ipk, and arch linux packager written in Go
gaia-pipeline/gaia
Build powerful pipelines in any programming language.
concourse/concourse
Concourse is a container-based automation system written in Go.
drone/autoscaler
Automatically adds or removes instances based on build volume
travis-ci/worker
Worker runs your Travis CI jobs
pressly/sup
Super simple deployment tool - think of it like 'make' for a network of servers
buildpacks/pack
CLI for building apps using Cloud Native Buildpacks
hashicorp/waypoint-plugin-sdk
Waypoint Plugin SDK enables building plugins for Waypoint: builders, deployment platforms, release managers, and more.
hashicorp/hc-install
Go module for downloading or locating HashiCorp binaries, verifying signatures and checksums, and asserting version constraints.
fujiwara/stretcher
Deployment tool with consul/serf event notification.

jordan-wright/email
Robust and flexible email library for Go
sendgrid/sendgrid-go
The Official Twilio SendGrid Golang API Library
emersion/go-smtp
📤 An SMTP client & server library written in Go
go-gomail/gomail
The best way to send emails in Go.
flashmob/go-guerrilla
Mini SMTP server written in golang
go-mail/mail
Fork of gomail.
emersion/go-message
✉️ A streaming Go library for the Internet Message Format and mail messages
mhale/smtpd
An SMTP server package written in Go, in the style of the built-in HTTP server.
wneessen/go-mail
📧 Easy to use, yet comprehensive library for sending mails with Go
scorredoira/email
An easy way to send emails with attachments in Go

Embeddable scripting languages and virtual machines

robertkrimen/otto
A JavaScript interpreter in Go (golang)
yuin/gopher-lua
GopherLua: VM and compiler for Lua in Go
bitfield/script
Making it easy to write shell-like scripts in Go
hashicorp/hil
HIL is a small embedded language for string interpolations.
layeh.com/gopher-luar
simplifies data passing to and from gopher-lua
thomaspoignant/go-feature-flag
GO Feature Flag is a simple, complete and lightweight self-hosted feature flag solution 100% Open Source. 🎛️
milochristiansen/lua
A Lua 5.3 VM and compiler written in Go.
ichiban/prolog
The only reasonable scripting engine for Go.
sbinet/go-python
naive go bindings to the CPython2 C-API
hashicorp/go-bexpr
Generic boolean expression evaluation in Go

mitchellh/mapstructure
Go library for decoding generic map values into native Go structures and vice versa.
buger/jsonparser
One of the fastest alternative JSON parser for Go that does not require schema
json-iterator/go
A high-performance 100% compatible drop-in replacement of "encoding/json"
mailru/easyjson
Fast JSON serializer for golang.
fatih/structs
Utilities for Go structs
valyala/fastjson
Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
gocarina/gocsv
The GoCSV package aims to provide easy CSV serialization and deserialization to the golang programming language
francoispqt/gojay
high performance JSON encoder/decoder with stream API for Golang
goccy/go-yaml
YAML support for the Go language
ghodss/yaml
A better way to marshal and unmarshal YAML in Golang

hashicorp/go-multierror
A Go (golang) package for representing a list of errors as a single error.
pkg/errors
Simple error handling primitives
cockroachdb/errors
Go error library with error portability over the network
go-errors/errors
errors with stacktraces for go
juju/errors
Common juju errors and functions to annotate errors. Based on juju/errgo
go.uber.org/multierr
Combine one or more Go errors together
joomcode/errorx
A comprehensive error handling library for Go
rotisserie/eris
Error handling library with readable stack traces and flexible formatting support 🎆
ztrue/tracerr
Golang errors with stack trace and source fragments.
hashicorp/errwrap
Errwrap is a Go (golang) library for wrapping and querying errors.

fsnotify/fsnotify
Cross-platform filesystem notifications for Go.
spf13/afero
A FileSystem Abstraction System for Go
gabriel-vasile/mimetype
A fast Golang library for media type and file extension detection, based on magic numbers
h2non/filetype
Fast, dependency-free Go package to infer binary file types based on the magic numbers header signature
rjeczalik/notify
File system event notification library on steroids.
howeyc/fsnotify
File system notification for Go
radovskyb/watcher
watcher is a Go package for watching for files or directory changes without using filesystem events.
otiai10/copy
Go copy directory recursively
karrick/godirwalk
Fast directory traversal for Golang
blang/vfs
Virtual filesystem library written in golang

shopspring/decimal
Arbitrary-precision fixed-point decimal numbers in Go
cockroachdb/apd
Arbitrary-precision decimals for Go
ericlagergren/decimal
A high-performance, arbitrary-precision, floating-point decimal library.
leekchan/accounting
money and currency formatting for golang
moov-io/ach
ACH implements a reader, writer, and validator for Automated Clearing House (ACH) files. The HTTP server is available in a Docker image and the Go package is available.
piquette/finance-go
:bar_chart: Financial markets data library implemented in go.
markcheno/go-talib
A pure Go port of TA-Lib (http://ta-lib.org)
sdcoffey/techan
Technical Analysis Library for Golang
coinrust/crex
A Golang cryptocurrency trading API & Library. Support Binance, BitMEX, Deribit, Bybit, Huobi DM, OKEX Futures and more.
beldur/kraken-go-api-client
Example client library in GO for use with the kraken.com API.

Game development tools, simulators and games

hajimehoshi/ebiten
Ebitengine - A dead simple 2D game engine for Go
faiface/pixel
A hand-crafted 2D game library in Go
markus-wa/demoinfocs-golang
A Counter-Strike 2 Demo Parser for Go (demoinfo)
notnil/chess
chess package for go
lonng/nano
Lightweight, facility, high performance golang based game server framework
xiaonanln/goworld
Scalable Distributed Game Server Engine with Hot Swapping in Golang
cherry-game/cherry
Actor model game server framework based on golang
lafriks/go-tiled
Go library to parse Tiled map editor file format (TMX) and render map to image
fogleman/rush
Rush Hour puzzle goodies!
gorcon/rcon
Source RCON Protocol implementation in Go.

twpayne/go-geom
Package geom implements efficient geometry types for geospatial applications.
paulmach/orb
Types and utilities for working with 2d geometry in Golang
go-spatial/tegola
Tegola is a Mapbox Vector Tile server written in Go
kellydunn/golang-geo
Geographical calculations in Go.
mmcloughlin/geohash
Golang geohash library
codingsince1985/geo-golang
Go library to access geocoding and reverse geocoding APIs
paulmach/go.geojson
Encoding and decoding GeoJSON <-> Go
dhconnelly/rtreego
an R-Tree library for Go
paulmach/osm
General purpose library for reading, writing and working with OpenStreetMap data
paulmach/go.geo
Geometry/geography library in Go, DEPRECATED, use ->

GUI

446

fyne.io/fyne/v2
Cross platform GUI toolkit in Go inspired by Material Design
lxn/walk
A Windows GUI toolkit for the Go Programming Language
getlantern/systray
a cross platfrom Go library to place an icon and menu in the notification area
sciter-sdk/go-sciter
Golang bindings of Sciter: the Embeddable HTML/CSS/script engine for modern UI development
asticode/go-astilectron
Build cross platform GUI apps with GO and HTML/JS/CSS (powered by Electron)
adrg/xdg
Go implementation of the XDG Base Directory Specification and XDG user directories
andlabs/ui
Platform-native GUI library for Go.
deanishe/awgo
Go library for Alfred 3 + 4 workflows
sqweek/dialog
Simple cross-platform dialog API for go-lang
ncruces/zenity
Zenity dialogs for Golang, Windows, macOS

Interfacing with hardware and other embedded development

hybridgroup/gobot
Golang framework for robotics, drones, and the Internet of Things (IoT)
go.bug.st/serial
A cross-platform serial library for go-lang.
goburrow/modbus
Fault-tolerant implementation of modbus protocol in Go (golang)
kidoman/embd
Embedded Programming Framework in Go
paypal/gatt
Gatt is a Go package for building Bluetooth Low Energy peripherals
tinygo.org/x/bluetooth
Cross-platform Bluetooth API for Go and TinyGo. Supports Linux, macOS, Windows, and bare metal using Nordic SoftDevice or HCI
karalabe/hid
Gopher Interface Devices (USB HID)
edgexfoundry/edgex-go
EdgeX Golang Services Monorepo | Owner: Core/Support WG
gokrazy/gokrazy
turn your Go program(s) into an appliance running on the Raspberry Pi 3, Pi 4, Pi 5, Pi Zero 2 W, or PCs (x86_64 or ARM64)!
brutella/hc
hc is a lightweight framework to develop HomeKit accessories in Go.

chromedp/chromedp
A faster, simpler way to drive browsers supporting the Chrome DevTools Protocol.
gocolly/colly
Elegant Scraper and Crawler Framework for Golang
elazarl/goproxy
An HTTP proxy library for Go
hashicorp/go-retryablehttp
Retryable HTTP client in Go
parnurzeal/gorequest
GoRequest -- Simplified HTTP client ( inspired by nodejs SuperAgent )
hashicorp/go-getter
Package for downloading things from a string URL using a variety of protocols.
dghubble/sling
A Go HTTP client library for creating and sending API requests
avast/retry-go
Simple golang library for retry mechanism
tebeka/selenium
Selenium/Webdriver client for Go
levigross/grequests
A Go "clone" of the great and famous Requests library

gin-gonic/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.
valyala/fasthttp
Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http
labstack/echo
High performance, minimalist Go web framework
micro/go-micro
A Go microservices framework
goadesign/goa
Design-first Go framework that generates API code, documentation, and clients. Define once in an elegant DSL, deploy as HTTP and gRPC services with zero drift between code and docs.
julienschmidt/httprouter
A high performance HTTP request router that scales well
gorilla/mux
Package gorilla/mux is a powerful HTTP router and URL matcher for building Go web servers with 🦍
kataras/iris
The fastest HTTP/2 Go Web Framework. New, modern and easy to learn. Fast development with Code you control. Unbeatable cost-performance ratio :rocket:
revel/revel
A high productivity, full-stack web framework for the Go language.
gobuffalo/buffalo
Rapid Web Development w/ Go

swaggo/swag
Automatically generate RESTful API documentation with Swagger 2.0 for Go.
grpc-ecosystem/go-grpc-middleware
Golang gRPC Middlewares: interceptor chaining, auth, logging, retries and more.
urfave/negroni
Idiomatic HTTP Middleware for Golang
gin-contrib/cors
Official CORS gin's middleware
swaggo/gin-swagger
gin middleware to automatically generate RESTful API documentation with Swagger 2.0.
rs/cors
Go net/http configurable handler to handle CORS requests
justinas/nosurf
CSRF protection middleware for Go.
justinas/alice
Painless middleware chaining for Go
gorilla/handlers
Package gorilla/handlers is a collection of useful middleware for Go HTTP services & web applications 🛃
gorilla/csrf
Package gorilla/csrf provides Cross Site Request Forgery (CSRF) prevention middleware for Go web applications & services 🔒

google/uuid
Go package for UUIDs based on RFC 4122 and DCE 1.1: Authentication and Security Services.
rs/xid
xid is a globally unique id generator thought for the web
segmentio/ksuid
K-Sortable Globally Unique IDs
bwmarrin/snowflake
A simple to use Go (golang) package to generate or parse Twitter snowflake IDs
satori/go.uuid
UUID package for Go
sony/sonyflake
A distributed unique ID generator inspired by Twitter's Snowflake
teris-io/shortid
Super short, fully unique, non-sequential and URL friendly Ids
lithammer/shortuuid
A generator library for concise, unambiguous and URL-safe UUIDs
denisbrodbeck/machineid
Get the unique machine id of any host (without admin privileges)
matoous/go-nanoid
Golang random IDs generator.

sigs.k8s.io/controller-runtime
Repo for the controller-runtime subproject of kubebuilder (sig-apimachinery)
fission/fission
Fast and Simple Serverless Functions for Kubernetes
k8s.io/kops
Kubernetes Operations (kOps) - Production Grade k8s Installation, Upgrades and Management
k8s.io/code-generator
Generators for kube-like API types
ericchiang/k8s
A simple Kubernetes Go client
k8s.io/cloud-provider
cloud-provider defines the shared interfaces which Kubernetes cloud providers implement. These interfaces allow various controllers to integrate with any cloud provider in a pluggable fashion. Please file any issues against the main Kubernetes repo.
rook/operator-kit
A library for creating a Kubernetes Operator
atlassian/smith
Smith is a Kubernetes workflow engine / resource manager
topolvm/topolvm
Capacity-aware CSI plugin for Kubernetes
openshift/api
Canonical location of the OpenShift API definition.

myzhan/boomer
A better load generator for locust, written in golang.
pinterest/bender
An easy-to-use library for creating load testing applications
mrichman/hargo
Hargo is a Go library and command line utility that parses HAR files, can convert to curl format, and serve as a load test driver.
lesovsky/noisia
Harmful workload generator for PostgreSQL
emicklei/hazana
package to build load tests for services (http, gRPC, tcp) by implementing an Attacker
tylertreat/bench
A generic latency benchmarking library.
tsenart/vegeta
HTTP load testing tool and library. It's over 9000!
httprunner/hrp
One-stop solution for HTTP(S) testing, covering API testing, load testing and digital experience monitoring (DEM).
square/finch
MySQL Benchmarking: Declarative, Distributed, and Amazing
rakyll/hey
HTTP load generator, ApacheBench (ab) replacement

sirupsen/logrus
Structured, pluggable logging for Go.
go.uber.org/zap
Blazing fast, structured, leveled logging in Go.
uber-go/zap
Blazing fast, structured, leveled logging in Go.
rs/zerolog
Zero Allocation JSON Logger
golang/glog
Leveled execution logs for Go
natefinch/lumberjack
lumberjack is a log rolling package for Go
go-logr/logr
A simple logging interface for Go
apex/log
Structured logging package for Go.
op/go-logging
Golang logging library
cihub/seelog
Seelog is a native Go logging library that provides flexible asynchronous dispatching, filtering, and formatting.

And science in general: math, statistics, etc.

montanaflynn/stats
A well tested and comprehensive Golang statistics library package with no dependencies.
gorgonia.org/gorgonia
Gorgonia is a library that helps facilitate machine learning in Go.
grailbio/reflow
A language and runtime for distributed, incremental data processing in the cloud
jbrukh/bayesian
Naive Bayesian Classification for Golang.
gonum/matrix
Matrix packages for the Go language [DEPRECATED]
scipipe/scipipe
Robust, flexible and resource-efficient pipelines using Go and the commandline
sajari/regression
Multivariable regression library in Go
gonum/stat
Statistics package for Go [DEPRECATED]
sugarme/gotch
Go binding for Pytorch C++ API (libtorch)
patrikeh/go-deep
Artificial Neural Network

nats-io/nats.go
Golang client for NATS, the cloud native messaging system.
nsqio/go-nsq
The official Go package for NSQ
streadway/amqp
Go client for AMQP 0.9.1
pebbe/zmq4
A Go interface to ZeroMQ version 4
gen2brain/beeep
Go cross-platform library for sending desktop notifications, alerts and beeps
sideshow/apns2
⚡ HTTP/2 Apple Push Notification Service (APNs) push provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps, using the APNs HTTP/2 protocol.
tidwall/redcon
Redis compatible server framework for Go
centrifugal/centrifuge
Real-time messaging library for Go. The simplest way to add feature-rich and scalable WebSocket support to your application. The core of Centrifugo server.
bsm/sarama-cluster
Cluster extensions for Sarama, the Go client library for Apache Kafka 0.9 [DEPRECATED]
lovoo/goka
Goka is a compact yet powerful distributed stream processing library for Apache Kafka written in Go.

miekg/dns
DNS library in Go
libp2p/go-libp2p
libp2p implementation in Go
google/gopacket
Provides packet processing capabilities for Go
vishvananda/netlink
Simple netlink library for go.
gorilla/websocket
Package gorilla/websocket is a fast, well-tested and widely used WebSocket implementation for Go.
fullstorydev/grpcurl
Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
v2ray.com/core
A platform for building proxies to bypass network restrictions.
hashicorp/yamux
Golang connection multiplexing library
pkg/sftp
SFTP support for the go.crypto/ssh package
anacrolix/torrent
Full-featured BitTorrent client package and utilities

influxdata/telegraf
Agent for collecting, processing, aggregating, and writing metrics, logs, and other arbitrary data.
rcrowley/go-metrics
Go port of Coda Hale's Metrics library
opentracing/opentracing-go
OpenTracing API for Go. 🛑 This library is DEPRECATED! https://github.com/opentracing/specification/issues/163
pkg/profile
Simple profiling for Go
grpc-ecosystem/go-grpc-prometheus
Prometheus monitoring for your gRPC Go servers.
openzipkin/zipkin-go
Zipkin distributed tracing library for go.
gocraft/health
Instrument your web apps with logging and metrics
openzipkin-contrib/zipkin-go-opentracing
OpenTracing Bridge for Zipkin Go
felixge/fgprof
🚀 fgprof is a sampling Go profiler that allows you to analyze On-CPU as well as Off-CPU (e.g. I/O) time together.
go.opentelemetry.io/contrib
Collection of extensions for OpenTelemetry-Go.

caddyserver/caddy
Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
unrolled/secure
HTTP middleware for Go that facilitates some quick security wins.
zalando/go-keyring
Cross-platform keyring interface for Go
caddyserver/certmagic
Automatic HTTPS for any Go program: fully-managed TLS certificate issuance and renewal
howeyc/gopass
getpasswd for Go
nbutton23/zxcvbn-go
zxcvbn password complexity algorithm in golang
gin-gonic/autotls
Support Let's Encrypt for a Go server application.
rsc/letsencrypt
Manage TLS certificates automatically via LetsEncrypt.org
muesli/crunchy
Finds common flaws in passwords. Like cracklib, but written in Go.
johanbrandhorst/certify
Automatic client and server certificate distribution and maintenance

kardianos/service
Run go programs as a service on major platforms.
cilium/ebpf
ebpf-go is a pure-Go library to read, modify and load eBPF programs and attach them to various hooks in the Linux kernel.
sevlyar/go-daemon
A library for writing system daemons in golang.
go-ole/go-ole
win32 ole implementation for golang
mitchellh/go-ps
Find, list, and inspect processes from Go (golang).
jaypipes/ghw
Go HardWare discovery/inspection library
prometheus/procfs
procfs provides functions to retrieve system, kernel and process metrics from the pseudo-filesystem proc.
klauspost/cpuid
CPU feature identification for Go
edsrzf/mmap-go
A portable mmap package for Go
mdlayher/netlink
Package netlink provides low-level access to Linux netlink sockets (AF_NETLINK). MIT Licensed.

valyala/quicktemplate
Fast, powerful, yet easy to use template engine for Go. Optimized for speed, zero memory allocations in hot paths. Up to 20x faster than html/template
flosch/pongo2
Django-syntax like template-engine for Go
unrolled/render
Go package for easily rendering JSON, XML, binary data, and HTML templates responses.
valyala/fasttemplate
Simple and fast template engine for Go
gobuffalo/plush
The powerful template system that Go needs
aymerick/raymond
Handlebars for golang
yosssi/ace
HTML template engine for Go
eknkc/amber
Amber is an elegant templating engine for Go Programming Language, inspired from HAML and Jade
maragu.dev/gomponents
HTML components in pure Go.
cbroglie/mustache
The mustache template language in Go

onsi/gomega
Ginkgo's Preferred Matcher Library
ory/dockertest
Write better integration tests! Dockertest helps you boot up ephermal docker images for your Go tests with minimal work.
google/gofuzz
Fuzz testing for go.
sanity-io/litter
Litter is a pretty printer library for Go data structures to aid in debugging and testing.
brianvoe/gofakeit
Random fake data generator written in go
jarcoal/httpmock
HTTP mocking for Golang
pingcap/failpoint
An implementation of failpoints for Golang.
cucumber/godog
Cucumber for golang
jonboulle/clockwork
a fake clock for golang
benbjohnson/clock
Clock is a small library for mocking time in Go.

Processing and formatting text

dustin/go-humanize
Go Humans! (formatters for units to human friendly sizes)
gosimple/slug
URL-friendly slugify with multiple languages support.
iancoleman/strcase
A golang package for converting to snake_case or CamelCase
sahilm/fuzzy
Go library that provides fuzzy string matching optimized for filenames and code symbols in the style of Sublime Text, VSCode, IntelliJ IDEA et al.
huandu/xstrings
Implements string functions widely used in other languages but absent in Go.
dlclark/regexp2
A full-featured regex engine in pure Go based on the .NET engine
mvdan/xurls
Extract urls from text
go-ego/gse
Go efficient multilingual NLP and text segmentation; support English, Chinese, Japanese and others.
mvdan.cc/xurls/v2
Extract urls from text

TUI

897

TUI and advanced CLI UI

olekukonko/tablewriter
ASCII table in golang
fatih/color
Color package for Go (golang)
rivo/tview
Terminal UI library with rich, interactive widgets — written in Golang
jroimartin/gocui
Minimalist Go package aimed at creating Console User Interfaces.
cheggaaa/pb
Console progress bar for Golang
nsf/termbox-go
Pure Go termbox implementation
briandowns/spinner
Go (golang) package with 90 configurable terminal spinner/progress indicators.
schollz/progressbar
A really basic thread-safe progress bar for Golang applications
gookit/color
🎨 Terminal color rendering library, support 8/16 colors, 256 colors, RGB color rendering output, support Print/Sprintf methods, compatible with Windows. GO CLI 控制台颜色渲染工具库,支持16色,256色,RGB色彩渲染输出,使用类似于 Print/Sprintf,兼容并支持 Windows 环境的色彩渲染
gosuri/uiprogress
A go library to render progress bars in terminal applications

hashicorp/go-plugin
Golang plugin system over RPC.
jinzhu/copier
Copier for golang, copy value from struct to struct and more
graphql-go/graphql
An implementation of GraphQL for Go / Golang
spf13/cast
safe and easy casting from one type to another in Go
blevesearch/bleve
A modern text/numeric/geo-spatial/vector indexing library for go
dop251/goja
ECMAScript/JavaScript engine in pure Go
microcosm-cc/bluemonday
bluemonday: a fast golang HTML sanitizer (inspired by the OWASP Java HTML Sanitizer) to scrub user generated content of XSS
thoas/go-funk
A modern Go utility library which provides helpers (map, find, contains, filter, ...)
hashicorp/memberlist
Golang package for gossip based membership and failure detection
bitly/go-simplejson
a Go package to interact with arbitrary JSON

go-playground/validator
:100: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
xeipuuv/gojsonschema
An implementation of JSON Schema, draft v4 v6 & v7 - Go language
gookit/validate
⚔ Go package for data validation and filtering. support Map, Struct, Form data. Go通用的数据验证与过滤库,使用简单,内置大部分常用验证、过滤器,支持自定义验证器、自定义消息、字段翻译。
badoux/checkmail
Golang package for email validation
thedevsaddam/govalidator
Validate Golang request data with simple rules. Highly inspired by Laravel's request validation.
qri-io/jsonschema
golang implementation of https://json-schema.org drafts 7 & 2019-09
go-openapi/validate
openapi toolkit validation helpers
kat-co/vala
A simple, extensible, library to make argument validation in Go palatable.
martini-contrib/binding
Martini handler for mapping and validating a raw request into a structure.

Git, Mercurial and so on

gogs/git-module
Package git-module is a Go module for Git access through shell commands
src-d/gitbase
SQL interface to git repositories, written in Go. https://docs.sourced.tech/gitbase
naggie/dstask
Git powered terminal-based todo/note manager -- markdown note page per task. Single binary!
andygrunwald/go-gerrit
Go client/library for Gerrit Code Review
git-duet/git-duet
Support for pairing with git
sosedoff/gitkit
Git toolkit for Go: Smart HTTP server, SSH server, hook receiver
tcnksm/go-gitconfig
Use gitconfig values in Golang.
waigani/diffparser
A Golang package for parsing git diffs
whilp/git-urls
git-urls parses git URLs
benfred/github-analysis
Trending Programming Languages ranked by GitHub Users

Video and subtitles

grafov/m3u8
Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema:
asticode/go-astits
Demux and mux MPEG Transport Streams (.ts) natively in GO
u2takey/ffmpeg-go
golang binding for ffmpeg
rylio/ytdl
YouTube download library and CLI written in Go
asticode/go-astisub
Manipulate subtitles in GO (.srt, .ssa/.ass, .stl, .ttml, .vtt (webvtt), teletext, etc.)
blackjack/webcam
Golang webcam library for Linux
pion/mediadevices
Go implementation of the MediaDevices API.
abema/go-mp4
Go library for reading and writing MP4 file
3d0c/gmf
Go Media Framework
cyruzin/golang-tmdb
This is a Golang wrapper for working with TMDb API. It aims to support version 3.

rogchap.com/v8go
Execute JavaScript from Go
vugu/vugu
Vugu: A modern UI library for Go+WebAssembly (experimental)
hexops/vecty
Vecty lets you build responsive and dynamic web frontends in Go using WebAssembly, competing with modern web frameworks like React & VueJS.
tetratelabs/wazero
wazero: the zero dependency WebAssembly runtime for Go developers
bytecodealliance/wasmtime-go
Go WebAssembly runtime powered by Wasmtime
norunners/vue
The progressive framework for WebAssembly applications.
gopherjs/websocket
websocket provides high- and low-level bindings for the browser's WebSocket API.
wapc/wapc-go
Golang-based WebAssembly Host Runtime for waPC-compliant modules
syumai/workers
Go package to run an HTTP server on Cloudflare Workers.