awesome-go
Structured collection of Go frameworks, libraries, tools, and resources. Automatically maintained and up-to-date with metadata, filtering, and comprehensive categorization.
https://github.com/abordage/awesome-go
Last synced: 3 days ago
JSON representation
-
Text Processing
-
Utility/Miscellaneous
- striker2000/petrovich - an inflector for Russian anthroponyms. ☆`51`
- Dynom/TySug
- arunsupe/semantic-grep
- mattn/go-runewidth
-
Formatters
- dustin/go-humanize
- neilotoole/sq
- ianlopshire/go-fixedwidth - width formatted data ☆`87`
- bojanz/address
-
Markup Languages
- BurntSushi/toml
- yuin/goldmark
- JohannesKaufmann/html-to-markdown
- pelletier/go-toml
- clbanning/mxj - notation paths and wildcards. Replaces x2j and j2x packages. ☆`631`
- mmalcek/bafi
- drewstinnett/gout
- antchfx/htmlquery
-
Parsers/Encoders/Decoders
- mvdan/sh
- mmcdole/gofeed
- google/go-querystring - querystring is Go library for encoding structs into URL query strings. ☆`2,119`
- olebedev/when
- adrianmo/go-nmea
- yassinebenaid/godump
- editorconfig/editorconfig-core-go
- polera/gonameparts
- bzick/tokenizer
- emersion/go-vcard
-
Regular Expressions
-
Scrapers
- gocolly/colly
- PuerkitoBio/goquery - thing, only in Go. ☆`14,841`
- mvdan/xurls
- foolin/pagser
- zoomio/tagify
-
Sanitation
- JoshuaDoes/gofuckyourself - based swear filter for Go. ☆`68`
- microcosm-cc/bluemonday
-
-
Command Line
-
Standard CLI
- codingconcepts/env - based environment configuration for structs ☆`126`
- jxskiss/mcli
- spf13/pflag - in replacement for Go's flag package, implementing POSIX/GNU-style --flags. ☆`2,672`
- jessevdk/go-flags
- alexflint/go-arg - based argument parsing in Go ☆`2,210`
- leaanthony/clir
- urfave/sflags
- urfave/cli
- elves/elvish
- alecthomas/kingpin
- dnote/dnote
- DavidGamba/go-getoptions - in auto-completion support. ☆`61`
- nyaosorg/go-readline-ny
- carapace-sh/carapace-spec - shell completion spec. ☆`25`
- sgreben/flagvar
- dixonwille/wlog - platform color and concurrency. ☆`67`
- spf13/cobra
- carapace-sh/carapace-bin - shell completion binary. ☆`1,612`
- hedzr/cmdr - compliant command-line UI (CLI) parser and Hierarchical-configuration operations ☆`140`
- hashicorp/cli - line interfaces. ☆`32`
- reeflective/readline
- cristalhq/acmd
- reeflective/console - loop application library for Cobra commands (powerful, ready-to-run and easy to use) ☆`100`
- nanovms/ops - build and run nanos unikernels ☆`1,442`
- carapace-sh/carapace - shell completion library. ☆`1,032`
- posener/complete
-
Advanced Console UIs
- antonmedv/fx
- charmbracelet/bubbletea
- jroimartin/gocui
- logrusorgru/aurora - colors that supports Printf/Sprintf methods ☆`1,475`
- charmbracelet/lipgloss
- charmbracelet/bubbles
- c-bata/go-prompt - prompt-toolkit. ☆`5,439`
- pterm/pterm - platform compatible. ☆`5,314`
- schollz/progressbar - safe progress bar for Golang applications ☆`4,611`
- mum4k/termdash
- gizak/termui
- guptarohit/asciigraph
- briandowns/spinner
- vbauerster/mpb
- muesli/termenv
- gookit/color
- mattn/go-isatty
- mattn/go-colorable
- Delta456/box-cli-maker
- Evertras/bubble-table
- cyucelen/marker
-
-
Configuration
-
Standard CLI
- spf13/viper
- sakirsensoy/genv
- chaindead/zerocfg - effort, concise configuration management that avoids boilerplate and repetitive actions. ☆`198`
- bytedance/sonic
- caarlos0/env - dependencies library to parse environment variables into structs ☆`5,897`
- alecthomas/kong - line parser for Go ☆`2,880`
- ilyakaznacheev/cleanenv
- adrg/xdg
- beatlabs/harvester
- BoRuDar/configuration
- PaddleHQ/go-aws-ssm
- go-simpler/env
- num30/config
- atelpis/enflag - focused Golang config: unify Env & Flag parsing in one call with minimal code and zero dependencies. ☆`35`
- wkhere/bcl
- greencoda/confiq
- dsbasko/go-cfg
- nasermirzaei89/env
- romshark/yamagiconf
- deatil/go-array
- knadh/koanf
- cristalhq/aconfig
- kkyr/fig
- nil-go/konf
- hjson/hjson-go
- gurkankaymak/hocon
- gookit/config
- vrischmann/envconfig
- omeid/uconfig - dependency, and extendable configuration management library for Go ☆`72`
-
-
Continuous Integration
-
Standard CLI
- gha-common/go-beautiful-html-coverage
- nikogura/gomason
- harness/harness - to-end developer platform with Source Control Management, CI/CD Pipelines, Hosted Developer Environments, and Artifact Registries. ☆`33,712`
- woodpecker-ci/woodpecker
- ovh/cds - Grade Continuous Delivery & DevOps Automation Open Source Platform ☆`4,787`
- raviqqe/muffet
- vladopajic/go-test-coverage - test-coverage is a tool designed to report issues when test coverage falls below a specified threshold ☆`205`
- opnlabs/dot
-
-
CSS Preprocessors
-
Standard CLI
-
-
Data Structures and Algorithms
-
Text Analysis
- agnivade/levenshtein
- plar/go-adaptive-radix-tree
- derekparker/trie
- viant/ptrie
- blevesearch/bleve - spatial/vector indexing library for go ☆`10,832`
-
Bloom and Cuckoo Filters
-
Maps
- lrita/cmap - safe concurrent map for go ☆`98`
- mhmtszr/concurrent-swiss-map - performance, thread-safe generic concurrent hash map implementation with Swiss Map. ☆`258`
- srfrog/dict - like dictionaries for Go ☆`46`
- goradd/maps
-
Bit Sets
-
Sets
- StudioSol/set
- deckarep/golang-set - tested and generic set type for the Go language. Trusted by GoogleCloudPlatform, Docker, 1Password, Ethereum and Hashicorp. ☆`4,625`
-
Bit-packing and Compression
- RoaringBitmap/roaring
- iancmcc/bingo - allocation, lexicographic-order-preserving packing/unpacking of native Go types to bytes. ☆`48`
- amallia/go-ef - Fano encoding ☆`40`
-
Data Structure and Algorithm Collections
-
Miscellaneous Data Structures and Algorithms
- axiomhq/hyperloglog - Beta bias correction and TailCut space reduction) brought to you by Axiom ☆`1,018`
- s0rg/quadtree - alloc, 100%-test covered Quadtree for golang ☆`41`
- seiflotfy/count-min-log - Min-Log ☆`69`
- barweiss/go-tuple
-
Queues
- adrianbrad/queue - safe generic way. ☆`326`
- embano1/memlog - memory and append-only data structure ☆`136`
- mikestefanello/backlite - safe, persistent, embedded task queues and background job runner w/ SQLite. Web monitoring UI included. ☆`131`
- hatchet-dev/hatchet
- gammazero/deque - buffer deque (double-ended queue) ☆`744`
-
Trees
-
Nullable Types
-
Pipes
-
-
Database
-
Database Tools
- HDT3213/rdb
- gatewayd-io/gatewayd - driven applications ☆`272`
- sosedoff/pgweb - platform client for PostgreSQL databases ☆`9,175`
- prest/prest - code, simplify and accelerate development, instant, realtime, high-performance on any Postgres application, existing or new ☆`4,499`
- ContentSquare/chproxy - Source ClickHouse http proxy and load balancer ☆`1,422`
- cybertec-postgresql/pg_timetable
- vitessio/vitess
- liweiyi88/onedump
- nikepan/clickhouse-bulk
- wesql/wescale - write-split, read-after-write-consistency, load balancing and OnlineDDL. ☆`312`
- sj14/dbbench
- bartventer/gorm-multitenancy - tenancy support for GORM managed databases ☆`72`
- kazhuravlev/database-gateway
- codingconcepts/dg
- go-mysql-org/go-mysql
-
Databases Implemented in Go
- lindb/lindb
- milvus-io/milvus - performance, cloud-native vector database built for scalable vector ANN search ☆`41,679`
- etcd-io/bbolt
- codenotary/immudb - immutable database based on zero trust, SQL/Key-Value/Document model, tamperproof, data change history ☆`8,874`
- tidwall/buntdb - memory key/value database for Go with custom indexing and geospatial support ☆`4,817`
- hypermodeinc/dgraph - performance graph database for real-time use cases ☆`21,303`
- prometheus/prometheus
- pingcap/tidb - the open-source, cloud-native, distributed SQL database designed for modern applications. ☆`39,475`
- influxdata/influxdb - time analytics ☆`30,966`
- dgraph-io/dgraph - performance graph database for real-time use cases ☆`21,399`
- VictoriaMetrics/VictoriaMetrics - effective monitoring solution and time series database ☆`15,645`
- dgraph-io/badger - value DB in Go. ☆`15,272`
- authzed/spicedb - inspired database for scalably storing and querying fine-grained authorization data ☆`6,278`
- cockroachdb/pebble - value database in Go ☆`5,664`
- nalgeon/redka - implemented with SQL ☆`4,413`
- HDT3213/godis
- nutsdb/nutsdb
- lotusdblabs/lotusdb - value database written in Go, extremely fast, compatible with LSM tree and B+ tree. ☆`2,244`
- kelindar/column - performance, columnar, in-memory store with bitmap indexing in Go ☆`1,503`
- couchbase/moss - a simple, fast, ordered, persistable, key-val storage library for golang ☆`1,016`
- dolthub/dolt
- marcboeker/go-duckdb - duckdb provides a database/sql driver for the DuckDB database engine. ☆`1,080`
- cockroachdb/cockroach
- rqlite/rqlite - tolerant database built on SQLite. Designed to keep your data highly available with minimal effort. ☆`17,170`
- hypermodeinc/badger - value DB in Go. ☆`15,106`
- rosedblabs/rosedb
- akrylysov/pogreb - value store for read-heavy workloads written in Go ☆`1,348`
- securitybunker/databunker
- objectbox/objectbox-go
- amit-davidson/LibraDB
- xgzlucario/rotom
-
SQL Query Builders
- didi/gendry
- nullism/bqb
- arthurkushman/buildsqlx
- galeone/igor
- cristalhq/builq
- HnH/qry
- JiveGroup/FluentSQL - flexible and powerful SQL string builder ☆`18`
- motrboat/hotcoal - Secure your handcrafted SQL against injection ☆`23`
- sqlc-dev/sqlc - safe code from SQL ☆`16,507`
- Masterminds/squirrel
- xo/dbtpl
- go-jet/jet
- doug-martin/goqu
- qustavo/dotsql
- lqs/sqlingo
-
Database Schema Migration
- robinjoseph08/go-pg-migrations - pg/pg. ☆`86`
- adlio/schema
- khezen/avro
- muir/libschema - library basis [Go] ☆`17`
- golang-migrate/migrate
- pressly/goose
- ariga/atlas
- amacneil/dbmate - agnostic database migration tool. ☆`6,569`
- rubenv/sql-migrate
- skeema/skeema - SQL schema management for MySQL and MariaDB ☆`1,345`
- sunary/sqlize
- bytebase/bytebase
- go-gormigrate/gormigrate
- linkedin/goavro
-
Caches
- golang/groupcache - filling library, intended as a replacement for memcached in many cases. ☆`13,289`
- bluele/gcache - memory cache library for golang. It supports multiple eviction policies: LRU, LFU, ARC ☆`2,724`
- VictoriaMetrics/fastcache - safe inmemory cache for big number of entries in Go. Minimizes GC overhead ☆`2,301`
- viccon/sturdyc
- jellydator/ttlcache - memory cache with item expiration and generics ☆`1,195`
- Yiling-J/theine-go - memory cache ☆`359`
- faabiosr/cachego - Multiple drivers ☆`373`
- elastic/go-freelru
- naughtygopher/pocache
- samber/hot - memory caching library for read-intensive Go applications ☆`223`
- erni27/imcache - dependency generic in-memory cache Go library ☆`123`
- OrlovEvgeny/go-mcache - throughput, sharded in-memory KV cache for Go with minimal allocations ☆`101`
- zekroTJA/timedmap - value pairs. ☆`74`
- codingsince1985/couchcache - service in Go backed by Couchbase ☆`66`
- mdaliyan/icache - safe, zero-dependency, key-value, in-memory cache ☆`23`
- hypermodeinc/ristretto - bound Go cache ☆`6,524`
- EchoVault/SugarDB - memory alternative to Redis. ☆`518`
- dgraph-io/ristretto - bound Go cache ☆`6,623`
- maypok86/otter
- eko/gocache
-
-
Database Drivers
-
NoSQL Database Drivers
- bradfitz/gomemcache
- couchbase/go-couchbase
- chenmingyong0423/go-mongox - in BSON doc builder, automated field updates, struct validation, hooks, and plugin-based programming. ☆`215`
- mongodb/mongo-go-driver
- Kamva/mgm
- redis/go-redis
- gomodule/redigo
- qiniu/qmgo - The Go driver for MongoDB. It‘s based on official mongo-go-driver but easier to use like Mgo. ☆`1,344`
- aerospike/aerospike-client-go
- couchbase/gocb
- go-kivik/kivik - like databases for Go and GopherJS ☆`334`
- nitishm/go-rejson - redis) ☆`346`
- aliexpressru/gomemcached
- btnguyen2k/gocosmos
-
Relational Database Drivers
-
Search and Analytic Databases
-
Interfaces to Multiple Backends
- philippgille/gokv - value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more) ☆`818`
- avito-tech/go-transaction-manager
- viant/dsc
- fogfish/dynamo
-
-
Date and Time
-
Search and Analytic Databases
- dromara/carbon - friendly time package for golang ☆`5,189`
- yaa110/go-persian-calendar
- bykof/gostradamus
- relvacode/iso8601
- araddon/dateparse
- nathan-osman/go-sunrise
- rickb777/date
-
-
Distributed Systems
-
Search and Analytic Databases
- micro/go-micro
- k8gb-io/k8gb
- cenkalti/rain
- trpc-group/trpc-go - performance RPC framework written in golang ☆`1,080`
- lesismal/arpc - way calling, notify and broadcast supported. ☆`1,081`
- etcd-io/raft
- vadiminshakov/committer - phase (2PC) and three-phase (3PC) protocols implementaion in Golang ☆`40`
- mochi-mqtt/server - performance Go MQTT v5 server for IoT, smarthome, and pubsub ☆`1,735`
- bsm/redislock
- hprose/hprose-golang - language RPC. This project is Hprose for Golang. ☆`1,261`
- unionj-cloud/go-doudou - doudou(doudou pronounce /dəudəu/)is OpenAPI 3.0 (for REST) spec and Protobuf v3 (for grpc) based lightweight microservice framework. It supports monolith service application as well. ☆`1,208`
- pdupub/go-pdu
- gmsec/micro
- capillariesio/capillaries
- svcavallar/celeriac.v1
- sanketplus/go-mysql-lock
- mbrostami/consistenthash
- zeromicro/go-zero - native Go microservices framework with cli tool for productivity. ☆`32,293`
- go-kit/kit
- grpc/grpc-go
- nats-io/nats-server - Performance server for NATS.io, the cloud and edge native messaging system. ☆`18,804`
- hashicorp/raft
- chrislusf/gleam
- anacrolix/torrent - featured BitTorrent client package and utilities ☆`5,912`
- lni/dragonboat - group Raft library in Go. ☆`5,281`
- emitter-io/emitter - subscribe platform. ☆`3,996`
- go-kratos/kratos - native era. ☆`25,215`
- smallnest/rpcx
- cloudwego/kitex - performance and strong-extensibility for building micro-services. ☆`7,771`
- luraproject/lura
- dragonflyoss/dragonfly
- go-dev-frame/sponge - to-use Go development framework that enables you to effortlessly build stable, reliable, and high-performance backend services with a "low-code" approach. ☆`2,711`
- go-eagle/eagle
- temporalio/sdk-go
- AppsFlyer/go-sundheit
- ybbus/jsonrpc
- anacrolix/dht
- tarmac-project/tarmac
- osamingo/jsonrpc - RPC 2.0 ☆`191`
- italolelis/outboxer
-
-
Editor Plugins
-
Search and Analytic Databases
-
-
Email
-
Search and Analytic Databases
- matcornic/hermes - mails for sending transactional mail ☆`3,016`
- AfterShip/email-verifier
- mailgun/mailgun-go
- xhit/go-simple-mail
- mocktools/go-smtp-mock
- truemail-rb/truemail-go
- axllent/mailpit
- foxcpp/maddy - in-one mail server. ☆`5,765`
- mjl-/mox - featured open source secure mail server for low-maintenance self-hosted email ☆`5,312`
- wneessen/go-mail
- sendgrid/sendgrid-go
- emersion/go-message
- vanng822/go-premailer
- toorop/go-dkim
- dimuska139/go-email-normalizer
- valord577/mailx
-
-
Embeddable Scripting Languages
-
Search and Analytic Databases
- d5/tengo
- mattn/anko
- Shopify/go-lua
- google/cel-go - Turing complete expression evaluation with gradual typing (Go) ☆`2,796`
- google/starlark-go
- metacall/core
- aarzilli/golua - in progress ☆`687`
- 1set/starlet
- wa-lang/wa
- PaesslerAG/gval
- ichiban/prolog
- php/frankenphp
- expr-lang/expr
- yuin/gopher-lua
- dop251/goja
-
-
Error Handling
-
Search and Analytic Databases
-
-
Financial
-
Search and Analytic Databases
- claygod/transaction
- jovandeginste/payme
- Rhymond/go-money
- c9s/bbgo
- formancehq/ledger
- bojanz/currency
- jokruger/dec128 - bit fixed-point decimal numbers in go. ☆`36`
- govalues/money
- nikolaydubina/fpmoney - Point Decimal Money ☆`35`
- shopspring/decimal - precision fixed-point decimal numbers in Go ☆`7,134`
- achannarasappa/ticker
- dannyvankooten/vat
- moov-io/ach
- invopop/gobl
- govalues/decimal
- quagmt/udecimal - performance, high precision, zero allocation fixed-point decimal library for financial applications ☆`164`
- nikolaydubina/fpdecimal - Point Decimals ☆`34`
-
-
Functional
-
Search and Analytic Databases
- samber/mo
- BooleanCat/go-functional - functional is a library of iterators to augment the standard library ☆`521`
- seborama/fuego
- rjNemo/underscore
-
-
Game Development
-
Search and Analytic Databases
- hajimehoshi/ebiten
- gopxl/pixel - crafted 2D game library in Go. ☆`366`
- kelindar/tile
- gonutz/prototype
- ungerik/go3d
- harfang3d/harfang3d
- EngoEngine/engo - source 2D game engine written in Go. ☆`1,810`
- xiaonanln/goworld
- gen2brain/raylib-go - to-use library to enjoy videogames programming. ☆`2,275`
- oakmound/oak
- JoelOtter/termloop - based game engine for Go, built on top of Termbox ☆`1,470`
- xtaci/gonet
- mlange-42/ark - - Archetype-based Entity Component System (ECS) for Go. ☆`189`
- andygeiss/ecs - Engine based on the Entity Component System concept in Golang. ☆`166`
- s0rg/fantasyname
- s0rg/grid
- topfreegames/pitaya
-
-
Geographic
-
Search and Analytic Databases
- tidwall/tile38 - time Geospatial and Geofencing ☆`9,540`
- uber/h3-go
- peterstace/simplefeatures
- golang/geo
- consbio/mbtileserver
- spatial-go/geoos
- paulmach/osm
- pantrif/s2-geojson
- airbusgeo/godal
- wroge/wgs84 - dependency Go package for coordinate transformations. ☆`140`
-
-
Go Generate Tools
-
Search and Analytic Databases
-
-
Go Tools
-
Search and Analytic Databases
- iyashjayesh/monigo - time insights into service-level and function-level metrics. With an intuitive UI, it enables developers to track and optimize performance. Get your Go app's dashboard up in just 10 seconds! ☆`386`
- bobg/decouple
- dustinblackman/gomodrun
- Zxilly/go-size-analyzer - platform support, detailed breakdowns, and multiple output formats. ☆`1,830`
- go-swagger/go-swagger
- becheran/roumon
- dtgorski/typex - Filter and examine Go type structures, interfaces and their transitive dependencies and relationships. Export structural types as TypeScript value object or bare type representations. ☆`205`
- ondrajz/go-callvis
- safedep/vet
- bitfield/gotestdox
- ahmedakef/gotutor
- bobg/modver
-
-
Goroutines
-
Search and Analytic Databases
- panjf2000/ants
- mborders/artifex - memory job queue for Golang using worker-based dispatching ☆`214`
- benmanns/goworker - based background worker that runs 10 to 100,000* times faster than Ruby-based workers. ☆`2,845`
- alitto/pond - performance goroutine worker pool written in Go ☆`2,041`
- destel/rill - based concurrency ☆`1,797`
- xxjwxc/gowp
- timandy/routine
- vladopajic/go-actor
- reugn/async
- loveleshsharma/gohive
- hmdsefi/gowl
- earthboundkid/flowmatic
-
-
GUI
-
Search and Analytic Databases
- lxn/walk
- progrium/darwinkit
- shurcooL/trayhost - platform Go library to place an icon in the host operating system's taskbar. ☆`258`
- prashantgupta24/activity-tracker
- therecipe/qt
- go-vgo/robotgo - platform RPA, GUI automation, Auto test and Computer use @vcaesar ☆`10,530`
- getlantern/systray
- cogentcore/core
- ncruces/zenity
- webview/webview - platform webview library for C/C++. Uses WebKit (GTK/Cocoa) and Edge WebView2 (Windows). ☆`13,710`
- richardwilkes/unison
- energye/energy - platform desktop applications for Windows, Mac OS X, and Linux ☆`557`
- fyne-io/fyne
- maxence-charriere/go-app
- gotk3/gotk3
- roblillack/spot - like desktop GUI toolkit for Go ☆`1,250`
- AllenDang/cimgui-go
-
-
Networking
-
Transliteration
- masterzen/winrm - line tool and library for Windows remote command execution in Go ☆`456`
- fclairamb/ftpserverlib
- mosajjal/dnsmonster
- google/gnxi - gRPC Network Management/Operations Interface Tools ☆`282`
- joeig/go-powerdns
- soypat/natiu-mqtt - simple, extensible MQTT implementation well suited for embedded systems. ☆`101`
- RogueTeam/fullproxy
- alegrey91/fwdctl
- wzshiming/httpproxy
- panjf2000/gnet - performance, lightweight, non-blocking, event-driven networking framework written in pure Go. ☆`10,969`
- pion/webrtc
- cloudflare/cloudflared
- miekg/dns
- google/gopacket
- gliderlabs/ssh
- songgao/water
- semihalev/sdns - performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy. ☆`1,019`
- xtaci/gaio - io(proactor) networking for Golang. ☆`799`
- cheng-zhongliang/event
- jimlambrt/gldap
- xtaci/kcp-go - Secure Reliable-UDP Library for golang with FEC ☆`4,363`
- valyala/fasthttp
- ccding/go-stun
- schollz/peerdiscovery - Go library for cross-platform local peer discovery using UDP multicast ☆`666`
- gansidui/gotcp
- udhos/jazigo
- jeroenrinzema/psql-wire
- lim-yoona/tcpack
- eduardonunesp/sslb
- c-robinson/iplib
- gaissmai/bart
- fish-tennis/gnet
- xtaci/kcptun - Safe Secure Tunnel based on QPP, KCP, FEC, and N:M multiplexing. ☆`14,314`
- quic-go/quic-go - ready QUIC implementation in pure Go ☆`11,247`
- elazarl/goproxy
- cloudwego/netpoll - performance non-blocking I/O networking framework focusing on RPC scenarios. ☆`4,486`
- xjasonlyu/tun2socks - powered by gVisor TCP/IP stack ☆`4,716`
- osrg/gobgp
- fortio/fortio - per-second load and record latency histograms and other useful stats. ☆`3,648`
- lesismal/nbio - performance and low memory cost, non-blocking, event-driven, easy-to-use. ☆`2,678`
- hashicorp/go-getter
- Allenxuxu/gev - blocking TCP network library / websocket server based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers. ☆`1,771`
- pkg/sftp
- lxzan/gws
- yosebyte/nodepass - established TLS/TCP connections ☆`1,548`
- cavaliergopher/grab
- hashicorp/mdns
- gosnmp/gosnmp
- DrmagicE/gmqtt - performance MQTT broker library that fully implements the MQTT protocol V3.x and V5 in golang ☆`1,026`
- yahoo/vssh
- DarthPestilane/easytcp - weight TCP framework written in Go (Golang), built with message router. EasyTCP helps you build a TCP server easily fast and less painful. ☆`824`
-
HTTP Clients
- rezmoss/axios4go
- gojek/heimdall
- hashicorp/go-retryablehttp
- levigross/grequests
- dghubble/sling
- go-resty/resty
- earthboundkid/requests
- bogdanfinn/tls-client
- Noooste/azuretls-client - to-use HTTP client to spoof TLS/JA3, HTTP2 and HTTP3 fingerprint ☆`392`
- monaco-io/request
- NdoleStudio/go-otelroundtripper
- go-zoox/fetch - A Powerful, Lightweight, Easy Http Client, inspired by Web Fetch API ☆`88`
- opus-domini/fast-shot - fire precision using Go's fastest and simple HTTP Client. ☆`94`
- imroc/req
-
-
OpenGL
-
HTTP Clients
- go-gl/glfw
- go-gl/gl
- go-gl/mathgl
- goxjs/gl - platform OpenGL bindings. ☆`178`
- goxjs/glfw - platform glfw library for creating an OpenGL context and receiving events. ☆`83`
-
-
ORM
-
HTTP Clients
- go-gorm/gorm
- aarondl/sqlboiler
- ent/ent
- go-rel/rel - Testable, Extendable and Crafted Into a Clean and Elegant API ☆`781`
- hashicorp/go-dbw
- steebchen/prisma-client-go - generated and fully type-safe database client ☆`2,307`
- uptrace/bun - first Golang ORM ☆`4,526`
- upper/db - like features. ☆`3,628`
- stephenafamo/bob
- FrancoLiberali/cql
- huandu/go-sqlbuilder - config ORM. ☆`1,645`
-
-
Reflection
-
HTTP Clients
- wzshiming/gotype
- tiendc/go-deepcopy - copy library for Go ☆`118`
-
-
Routers
-
Security
-
HTTP Clients
- number571/go-peer - resistant networks in Go language ☆`312`
- andskur/argon2-hashing
- rsjethani/secret
- FiloSottile/age - style composability. ☆`20,366`
- go-acme/lego
- anatol/booster
- hillu/go-yara
- caddyserver/certmagic - managed TLS certificate issuance and renewal ☆`5,403`
- Ullaakut/cameradar
- awnumar/memguard
- unrolled/secure
- cossacklabs/acra - level encryption, search through encrypted data, SQL injections prevention, intrusion detection, honeypots. Supports client-side and proxy-side ("transparent") encryption. SQL, NoSQL. ☆`1,447`
- dromara/dongle - friendly crypto package for golang ☆`1,094`
- teler-sh/teler-waf - waf is a Go HTTP middleware that protects local web services from OWASP Top 10 threats, known vulnerabilities, malicious actors, botnets, unwanted crawlers, and brute force attacks. ☆`395`
- bitfield/qrand
- corazawaf/coraza
- cossacklabs/themis
- mariocandela/beelzebub
- kevinburke/nacl
- ssh-vault/ssh-vault
- anatol/luks.go
- zitadel/passwap
- tg123/go-htpasswd
- adrianosela/sslmgr
-
-
Serialization
-
HTTP Clients
- jszwec/csvutil
- fxamacker/cbor
- ghostiam/binstruct
- golang/protobuf
- ugorji/go
- csweichel/bel - useful for JSON RPC ☆`45`
- o1egl/fwencoder
- tiendc/go-csvlib - level performant CSV encoding and decoding library ☆`19`
-
-
Server Applications
-
HTTP Clients
- openflagr/flagr
- caddyserver/caddy - platform HTTP/1-2-3 web server with automatic HTTPS ☆`68,553`
- flipt-io/flipt - ready, Git native feature management solution ☆`4,660`
- charmbracelet/wish
- getfider/fider
- xyproto/algernon - contained pure-Go web server with Lua, Teal, Markdown, Ollama, HTTP/2, QUIC, Redis, SQLite and PostgreSQL support ++ ☆`2,964`
- thomaspoignant/go-feature-flag - hosted feature flag solution 100% Open Source. ☆`1,872`
- openrundev/openrun
- blind-oracle/cortex-tenant
- baalimago/wd-41 - Development 41, a static web server with live-reload ☆`150`
- rekby/lets-proxy2
- pocketbase/pocketbase
- easegress-io/easegress
- claceio/clace
- minio/minio - performance, S3 compatible object store, open sourced under GNU AGPLv3 license. ☆`59,248`
- etcd-io/etcd - value store for the most critical data of a distributed system ☆`50,991`
- drakkan/sftpgo - featured and highly configurable SFTP, HTTP/S, FTP/S and WebDAV server - S3, Google Cloud Storage, Azure Blob ☆`11,474`
- roadrunner-server/roadrunner - performance PHP application server, process manager written in Go and powered with plugins ☆`8,352`
-
-
Software Packages
-
DevOps Tools
- kubernetes/kubernetes - Grade Container Scheduling and Management ☆`119,265`
- moby/moby - a collaborative project for the container ecosystem to assemble container-based systems ☆`71,224`
- scaleway/scaleway-cli
- xitonix/trubka
- bitfield/script - like scripts in Go ☆`6,903`
- kubernetes-sigs/kind - local clusters for testing Kubernetes ☆`14,828`
- getanteon/anteon - based Kubernetes Monitoring and Performance Testing ☆`8,539`
- codesenberg/bombardier - platform HTTP benchmarking tool written in Go ☆`6,662`
- taubyte/tau
- pomerium/pomerium - aware access proxy. ☆`4,546`
- jenkins-zh/jenkins-cli
- appleboy/drone-scp
- datarootsio/tf-profile
- jkaninda/goma-gateway - Performance API Gateway and Reverse Proxy with declarative config, robust middleware, and support for REST, GraphQL, TCP, UDP, and gRPC. ☆`139`
- s0rg/decompose - engineering tool for docker environments ☆`118`
- x1unix/docker-go-mingw
- appleboy/drone-jenkins
- aptly-dev/aptly - Debian repository management tool ☆`2,736`
- getanteon/alaz - depth insights with service maps, metrics, and more, while staying alert to crucial system anomalies ☆`713`
- appleboy/easyssh-proxy - proxy provides a simple implementation of some SSH protocol features in Go ☆`343`
- thevxn/dish
- gaia-pipeline/gaia
- peak/s5cmd
- ajvb/kala
- sanbornm/go-selfupdate
- yusufcanb/tlm
- ovh/utask
- pipe-cd/pipecd
- kubenetworks/kubevpn
- KusionStack/kusion
- kevincobain2000/gobrew
- oxyno-zeta/s3-proxy
- emicklei/mora
- traefik/traefik
- go-gitea/gitea - hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD ☆`52,539`
- kubernetes/minikube
- k3s-io/k3s
- grafana/k6
- tsenart/vegeta
- hashicorp/packer
- kubeshark/kubeshark - wide L4 traffic (PCAP), and using minimal production compute resources. ☆`11,593`
- moovweb/gvm
- flannel-io/flannel
- ko-build/ko
- kubevela/kubevela
- k3d-io/k3d
- stefanprodan/podinfo
- fleetdm/fleet
- apecloud/kubeblocks
- gabrie30/ghorg - Supports GitHub, GitLab, Bitbucket, and more ☆`1,902`
- abahmed/kwatch
- TimothyYe/skm
- rogerwelin/cassowary - platform HTTP load-testing tool written in Go ☆`810`
- kool-dev/kool
-
Other Software
- gilbertchen/duplicacy
- Forceu/Gokapi
- edwingeng/hotswap
- s0rg/crawley - way web crawler ☆`321`
- schollz/croc
- restic/restic
- janpfeifer/gonb
- alajmo/sake
- chapar-rest/chapar
- goccmack/gocc
- moshebe/gebug
- seaweedfs/seaweedfs
- root-gg/plik
- pointlander/peg
- fogleman/nes
- go-sonic/sonic
- gocircuit/circuit
- shurcooL/Go-Package-Store
- juicedata/juicefs
- Shopify/toxiproxy
- visualfc/liteide - platform Go IDE. ☆`7,732`
- boyter/scc
- 0xERR0R/blocky - blocker for local network with many features ☆`5,817`
- documize/community
- SpatiumPortae/portal - line file transfer utility from any computer to another ☆`1,716`
- msoap/shell2http
- marwanhawari/stew
- mk-5/fjira - find cli jira interface ☆`247`
- assafmo/joincap
- lingrino/vaku
- DMcP89/tinycare-tui - care-terminal ☆`16`
-
-
Testing
-
Testing Frameworks
- kinbiko/jsonassert
- MarvinJWendt/testza - featured test framework for Go! Assertions, fuzzing, input testing, output capturing, and much more! ☆`420`
- madflojo/testcerts - signed certificates and certificate authorities for Go tests ☆`83`
- hedhyw/gherkingen
- rekby/fixenv
- testcontainers/testcontainers-go - based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done. ☆`4,543`
- orlangure/gnomock
- stretchr/testify
- keploy/keploy
- google/go-cmp
- gavv/httpexpect - to-end HTTP and REST API testing for Go. ☆`2,696`
- cucumber/godog
- viant/endly
- ysmood/got
- adamluzsi/testcase
- earthboundkid/be
- corbym/gocrest - Hamcrest-like matchers for Go ☆`106`
- go-restit/restit
- viant/dsunit
- abecodes/dft
- dnaeon/go-vcr
- go-testfixtures/testfixtures
- fergusstrange/embedded-postgres
- gotestyourself/gotest.tools
- maxatome/go-testdeep
- appleboy/gofight
- cunicu/gont
-
Mock
- vektra/mockery
- jarcoal/httpmock
- DATA-DOG/go-txdb
- DATA-DOG/go-sqlmock
- SpectoLabs/hoverfly
- matryer/moq
- maxbrunsfeld/counterfeiter - contained, type-safe test doubles in go ☆`1,106`
- gojuno/minimock
- pashagolub/pgxmock
- xhd2015/xgo - in-one go testing library ☆`428`
- seborama/govcr
- elgohr/go-localstack
- uber-go/mock
-
Selenium and browser control tools
- chromedp/chromedp
- go-rod/rod
- playwright-community/playwright-go
- mafredri/cdp - safe bindings for the Chrome DevTools Protocol (CDP), written in the Go programming language. ☆`770`
-
Fail injection
-
Fuzzing
-
-
Third-party APIs
-
Utility/Miscellaneous
- shurcooL/githubv4
- ctreminiom/go-atlassian
- rhnvrm/simples3
- wit-ai/wit-go
- sostronk/go-steam
- Icelain/jokeapi
- zc2638/swag - in, gin, chi, mux, echo, httprouter, fasthttp and more. ☆`50`
- bwmarrin/discordgo
- sashabaranov/go-openai - 5, GPT-Image-1, Whisper API clients for Go ☆`10,448`
- googleapis/google-cloud-go
- aws/aws-sdk-go-v2
- ChimeraCoder/anaconda
- go-lark/lark - to-use SDK for Feishu and Lark Open Platform (Instant Messaging API only) ☆`233`
- koltyakov/gosip
- cyruzin/golang-tmdb
- gregdel/pushover
- andygrunwald/go-trending
- switchupcb/disgo
- mvrilo/go-redoc - redoc is an embedded OpenAPI/Swagger documentation ui for Go using ReDoc ☆`94`
- FreeLeh/GoFreeDB
- mehanizm/airtable
- brunomvsouza/ynab.go
- k-capehart/go-salesforce
- rapito/go-spotify
- rinchsan/device-check-go - query and modify the per-device bits ☆`25`
- chainifynet/aws-encryption-sdk-go
- andygrunwald/go-gerrit
- circa10a/go-aws-news
- staskobzar/goami2
- google/go-github
- slack-go/slack
- googleapis/google-api-go-client - generated Google APIs for Go. ☆`4,358`
- minio/minio-go
- stripe/stripe-go
- huandu/facebook
- OTA-Insight/bqwriter
- go-playground/webhooks
- plutov/paypal
- codingsince1985/geo-golang
- chyroc/lark
- otiai10/openaigo - tested ☆`299`
- onrik/ethrpc
- adlio/trello
-
-
Utilities
-
Utility/Miscellaneous
- duke-git/lancet
- syntaqx/cookie
- tiendc/gofn
- Boeing/config-file-validator
- hedhyw/json-log-viewer
- webriots/rate - performance rate limiter library for Go applications ☆`163`
- arthurkushman/pgo
- VividCortex/pm
- antham/ghokin
- xorcare/pointer
- antham/yogo
- icza/backscanner
- asticode/go-astitodo
- wroge/scan
- shockerli/cvt
- kazhuravlev/git-tools
- kazhuravlev/healthcheck
- jmoiron/sqlx
- goreleaser/goreleaser
- xo/usql - line interface for SQL databases ☆`9,695`
- cilium/ebpf - go is a pure-Go library to read, modify and load eBPF programs and attach them to various hooks in the Linux kernel. ☆`7,361`
- minio/mc
- darccio/mergo
- avast/retry-go
- alajmo/mani
- cristianoliveira/ergo
- mennanov/limiters
- blockloop/scan
- htcat/htcat
- ungerik/go-dry
- antham/chyle
- maja42/goval
- gookit/filter
- commander-cli/cmd
- jfcg/sorty
- knbr13/gitcs
- jaschaephraim/lrserver
- karl-cardenas-coding/go-lambda-cleanup - lambda-cleanup - A solution for removing previous versions of AWS Lambdas ☆`96`
- borovikovd/gomsort - linter that sorts methods ☆`26`
- piglig/go-qr - quality and minimalistic QR code generator ☆`45`
- ik5/gostrutils
- floatdrop/debounce - allocation debouncer ☆`34`
- kazhuravlev/just
- skovtunenko/graterm
- mikekonan/go-types - 4217, ISO-3166, and other types. ☆`22`
- nikolaydubina/watchhttp
- junegunn/fzf - line fuzzy finder ☆`75,849`
- wagoodman/dive
- samber/lo - style Go library based on Go 1.18+ Generics (map, filter, contains, find...) ☆`20,766`
- dropbox/godropbox
- tdewolff/minify
- maruel/panicparse
- create-go-app/cli - contained solution for developers of any qualification to create a production-ready project with backend (Go), frontend (JavaScript, TypeScript) and deploy automation (Ansible, Docker) by running only one CLI command. ☆`2,734`
- megaease/easeprobe
- failsafe-go/failsafe-go
- gabriel-vasile/mimetype
- georgysavva/scany
- miniscruff/changie
- cep21/circuit
- jonboulle/clockwork
- derekparker/delve
- Unrud/remote-touchpad
- gotranspile/cxgo
- ferama/rospo
- kamilsk/retry
- subosito/gotenv
- chenquan/diskusage
- reugn/wifiqr - Fi login details ☆`280`
- ikeikeikeike/go-sitemap-generator - sitemap-generator is the easiest way to generate Sitemaps in Go ☆`227`
- viant/toolbox - go utility library ☆`227`
- PhakornKiong/go-pattern-match
- pioz/countries
- reugn/equalizer
- mozillazg/go-httpheader
- linxGnu/mssqlx
- goforj/godump - friendly pretty-printer and debug dumper for Go structs, inspired by Laravel’s dump() and Symfony’s VarDumper. ☆`1,374`
- immortal/immortal - platform (OS agnostic) supervisor ☆`830`
- biter777/countries - ISO-639, ISO-3166 countries codes with subdivisions and names, ISO-4217 currency designators, ITU-T E.164 IDD phone codes, countries capitals, UN M.49 codes, IANA ccTLD countries domains, FIPS, IOC/NOC and FIFA codes, VERY VERY FAST, compatible with Databases/JSON/BSON/GOB/XML/CSV, Emoji countries flags and currencies, Unicode CLDR. ☆`492`
- joshmedeski/sesh
- itchyny/bed
- rubyist/circuitbreaker
- owenthereal/upterm
-
-
Validation
-
Web Frameworks
-
Utility/Miscellaneous
- danielgtaylor/huma
- ankorstore/yokai
- i-love-flamingo/flamingo-commerce - Commerce Framework on top of Flamingo. Used to build E-Commerce "Portals" and connect it with the help of individual Adapters to other services. ☆`585`
- beego/beego - source, high-performance web framework for the Go programming language. ☆`32,372`
- labstack/echo
- gofr-dev/gofr
- gogf/gf
- cloudwego/hertz - performance and strong-extensibility for building micro-services. ☆`6,953`
- goadesign/goa - 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. ☆`6,018`
- apache/dubbo-go
- goravel/goravel - featured Golang Development Framework skeleton ☆`4,324`
- go-goyave/goyave
- savsgio/atreugo
- templui/templui
- indeedeng/iwf - As-Code microservice orchestration platform offering an orchestration coding framework and service for building resilient, fault-tolerant, scalable long-running processes ☆`625`
- hidevopsio/hiboot
- beatlabs/patron
- gone-io/gone - A Lightweight Dependency Injection Framework for Go | Tag-based Auto Injection | Supports Config Center/Lifecycle Management | Provides Rich Ecosystem Components and Scaffolding Tool ☆`132`
- claygod/microservice
- yaitoo/xun - in html/template and net/http package’s router (1.22). ☆`91`
- go-spring/spring-core - Spring is a high-performance Go framework inspired by Spring Boot, offering DI, auto-configuration, and lifecycle management while maintaining Go's simplicity and efficiency. ☆`73`
- JiveGroup/gFly
- gin-gonic/gin - performance HTTP web framework written in Go. It provides a Martini-like API but with significantly better performance—up to 40 times faster—thanks to httprouter. Gin is designed for building REST APIs, web applications, and microservices. ☆`87,377`
- gofiber/fiber
- fastschema/fastschema - in-One Backend as a Service with Headless CMS Power ☆`524`
- uadmin/uadmin
- xxjwxc/ginrpc
- gookit/rux
- abemedia/go-don
- SaiNageswarS/go-api-boot - ready Go framework for gRPC + HTTP APIs with MongoDB ODM, zero-config SSL, Temporal workflows, cloud utilities, and bootstrap CLI. ☆`35`
- clubpay/ronykit
- go-fuego/fuego - Web framework generating OpenAPI 3 spec from source code - Pluggable to existing Gin & Echo APIs ☆`1,615`
- rookie-ninja/rk-boot - boot and let the team take over clean and tidy code. ☆`575`
- i-love-flamingo/flamingo
- jvcoutinho/lit
-
-
Workflow Frameworks
-
Utility/Miscellaneous
- luno/workflow - safe, event-driven workflow orchestration library that scales with your business. Build robust, distributed workflows in Go with compile-time safety, automatic retries, and horizontal scaling out of the box. Integrate with your existing tech stack using adapters ☆`208`
- noneback/go-taskflow - purpose Task-parallel Programming Framework with integrated visualizer and profiler ☆`603`
- dagu-org/dagu - contained, lightweight workflow engine for enterprise and small teams. Single binary with Web UI. 100% open source. No vendor lock-in. It natively supports running containers and executing commands over SSH. Offline or air-gapped environment ready. ☆`2,921`
- cadence-workflow/cadence-go-client
- rhosocial/go-dag - based framework has been developed to oversee the execution of workflows delineated by directed acyclic graphs (DAGs). ☆`35`
-
-
Zero Trust
-
Utility/Miscellaneous
-
-
Artificial Intelligence
- maximhq/bifrost
- tmc/langchaingo - based programs in Go ☆`8,228`
- presbrey/ollamafarm
- universal-tool-calling-protocol/go-utcp
- ollama/ollama - oss, DeepSeek-R1, Gemma 3 and other models. ☆`157,711`
- philippgille/chromem-go - like interface and zero third-party dependencies. In-memory with optional persistence. ☆`802`
- mudler/LocalAI - hosted and local-first. Drop-in replacement for OpenAI, running on consumer-grade hardware. No GPU required. Runs gguf, transformers, diffusers and many more. Features: Generate Text, MCP, Audio, Video, Images, Voice Cloning, Distributed, P2P and decentralized inference ☆`40,137`
-
Job Scheduler
-
Search and Analytic Databases
- pardnchiu/go-cron
- adhocore/gronx - free Cron expression parser (due checker, next/prev due date finder), task runner, job scheduler and/or daemon for Golang (tested on v1.13+) and standalone usage. If you are bold, use it to replace crontab entirely. ☆`482`
- madflojo/tasks - process scheduler for recurring tasks in Go ☆`321`
- onatm/clockwerk
- pardnchiu/go-scheduler
- fieldryand/goflow
- go-co-op/gocron
- reugn/go-quartz - dependency scheduling library for Go ☆`1,985`
- bart6114/cheek - sized declarative job scheduler ☆`197`
- deepaksinghvi/cdule
- romshark/sched - forward time. ☆`28`
-
-
Messaging
-
Search and Analytic Databases
- Raezil/GoEventBus - free, ultra-fast event bus for Go that powers real-time pipelines, microservices ☆`43`
- RichardKnop/machinery
- jcuga/golongpoll - sub easy via HTTP long-poll servers and clients ☆`664`
- timbray/quamina - matching library in Go ☆`437`
- mehdihadeli/Go-MediatR - driven architecture, inspired by csharp MediatR library. ☆`266`
- robinjoseph08/redisqueue
- confluentinc/confluent-kafka-go
- olahol/melody
- sideshow/apns2
- lovoo/goka
- asaskevich/EventBus
- pebbe/zmq4
- cskr/pubsub
- oagudo/outbox
- jirenius/go-res
- hibiken/asynq
- centrifugal/centrifugo - time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably, socket.io, Phoenix.PubSub, SignalR. Set up once and forever. ☆`9,639`
- dunglas/mercure - efficient solution for real-time communications ☆`5,138`
- rabbitmq/amqp091-go - 9-1 Go client maintained by the RabbitMQ team ☆`1,937`
- jandelgado/rabtap
- furdarius/rabbitroutine - reconnect and publishing retry routine for you. ☆`113`
- dailymotion/oplog
- Protocol-Lattice/GoEventBus - free, ultra-fast event bus for Go ☆`48`
- maxatome/go-vitotrol
- ThreeDotsLabs/watermill - driven applications the easy way in Go. ☆`9,321`
- appleboy/gorush
- nats-io/nats.go
- SchwarzIT/hypermatch - performance Go library designed for rapid matching of a large number of rules to events. It processes thousands of events per second against extensive rule sets in-memory with minimal latency . ☆`33`
- goptics/varmq - Agnostic and Zero-dep Message Queue for Your Concurrent Go Program ☆`175`
- IBM/sarama
- hyperonym/ratus
-
-
Concurrency
-
Stream Processing
-
-
Code Analysis
- sqs/goreturns - like tool for Go programmers that fills in Go return statements with zero values to match the func return types ☆`536`
- kisielk/errcheck
- yuroyoro/goast-viewer
- mccoyst/validate
- mibk/dupl
- shurcooL/gostatus
- golangci/golangci-lint
- mgechev/revive - in replacement for golint ☆`5,362`
- go-critic/go-critic
- segmentio/golines
- daveshanley/vacuum
- Antonboom/testifylint
- Crocmagnon/fatcontext
- sashamelentyev/usestdlibvars
- presmihaylov/todocheck
- mdempsky/unconvert
- tomarrell/wrapcheck
-
Bot Building
- NicoNex/echotron
- mr-linch/go-tg
- slack-io/slacker
- onrik/micha
- go-telegram/bot
- tucnak/telebot
- wabarc/wayback - style interface that prioritizes privacy and accessibility, integrated with various archival services including Internet Archive, archive.today, Ghostarchive, IPFS, Telegraph, and file systems. ☆`2,107`
- gempir/go-twitch-irc
- mymmrac/telego
- diamondburned/arikawa
- innogames/slack-bot
-
Science and Data Analysis
-
HTTP Clients
- gonum/plot
- nytlabs/streamtools
- paulmach/orb
- claygod/PiHex
- ndabAP/assocentity
- sgreben/piecewiselinear
- bebop/poly
- gonum/gonum
- hmdsefi/gograph - theory and algorithms. ☆`101`
- go-hep/hep - hep.org/x/hep packages and tools ☆`252`
- nikolaydubina/jsonl-graph
-
-
File Handling
-
Search and Analytic Databases
- qmuntal/opc
- artonge/go-gtfs
- 1set/todotxt
- dundee/gdu
- SebastiaanKlippert/go-wkhtmltopdf
- kdomanski/iso9660
- artonge/go-csv-tag
- charlievieth/fastwalk
- parsyl/parquet
- codingsince1985/checksum
- pdfcpu/pdfcpu
- otiai10/copy
- no-src/gofs - platform real-time file synchronization tool out of the box based on Golang ☆`522`
- viant/afs
- C2FO/vfs
- barasher/go-exiftool
- adelowo/gulter - data and uploading files ☆`66`
- spf13/afero
-
-
Hardware
-
Search and Analytic Databases
-
-
Images
-
Search and Analytic Databases
- disintegration/gift
- marekm4/color-extractor
- sensepost/gowitness - a golang, web screenshot utility using Chrome Headless ☆`4,083`
- HugoSmits86/nativewebp
- Pixboost/transformimgs
- kolesa-team/go-webp
- gojek/darkroom
- aofei/cameron
- cshum/imagor
- thoas/picfit
- gographics/imagick
- tdewolff/canvas
- davidbyttow/govips
- yeqown/go-qrcode
- koyachi/go-nude
- ungerik/go-cairo
- qmuntal/gltf
- jonoton/scout
- hybridgroup/gocv
- anthonynsimon/bild
- auyer/steganography
-
-
JSON
-
Search and Analytic Databases
- valyala/fastjson
- PerimeterX/marshmallow - when some fields are known and some aren't, with zero performance overhead nor extra coding needed. ☆`386`
- romshark/jscan
- simonnilsson/ask
- vtopc/epoch - in time.Time type in JSON ☆`17`
- Jeffail/gabs
- Andrew-M-C/go.jsonvalue
- tidwall/gjson - JSON parser for Go ☆`15,369`
- wI2L/jsondiff
- spyzhov/ajson
- iOliverNguyen/ujson - A fast and minimal JSON parser and transformer that works on unstructured JSON ☆`85`
- neilotoole/jsoncolor
- ake-persson/mapslice-json
- ohler55/ojg
-
-
Logging
-
Search and Analytic Databases
- apex/log
- samber/slog-multi
- gookit/slog
- go-playground/log
- rs/xlog
- yuseferi/zax
- clok/kemba
- rs/zerolog
- k0kubun/pp
- lmittmann/tint
- DeRuina/timberjack - based, time-based, and manual rotation. ☆`104`
- uber-go/zap
- davecgh/go-spew
- golang/glog
- getsentry/sentry-go
- Lifailon/lazyjournal
- sirupsen/logrus
- phuslu/log
- henvic/httpretty
- simukti/sqldb-logger
- hashicorp/logutils
- samber/slog-formatter
-
-
Machine Learning
-
Query Language
-
Template Engines
-
Other Software
- valyala/fasttemplate
- valyala/quicktemplate
- robfig/soy
- goradd/got
- a-h/templ
- johnfercher/maroto
- CloudyKit/jet
- osteele/liquid
- go-sprout/sprout - Useful template functions for Go templates with steroids ☆`196`
-
-
UUID
-
Utility/Miscellaneous
-
-
Windows
-
Utility/Miscellaneous
-
-
XML
-
Utility/Miscellaneous
-
-
Gophers
-
Data Integration Frameworks
-
Standard CLI
-
-
Forms
-
Search and Analytic Databases
- cinar/checker
- sonh/qs
- justinas/nosurf
- gorilla/csrf
- go-playground/form
- ggicci/httpin - HTTP Request from/to Go Struct (Bi-directional Data Binding between Go Struct and http.Request) ☆`379`
-
-
Miscellaneous
-
Project Layout
- allaboutapps/go-starter - ready SQL-/Swagger-first RESTful JSON API written in Go, highly integrated with VSCode DevContainers by allaboutapps. ☆`585`
- golang-standards/project-layout
- Melkeydev/go-blueprint - blueprint allows users to spin up a quick Go project using a popular framework ☆`8,493`
- ardanlabs/service - kit for writing services in Go using Kubernetes. ☆`3,918`
- Shpota/goxygen
- mikestefanello/pagoda - stack web development starter kit and admin panel in Go ☆`2,878`
- naughtygopher/goapp
- lacion/cookiecutter-golang
- golang-templates/seed
- raeperd/kickstart.go
- wangyoucao577/go-project-layout
- go-nunu/nunu
- sagikazarmark/modern-go-application
-
Uncategorized
- gen2brain/go-unarr
- TwiN/gatus
- alexliesenfeld/health
- ulikunitz/xz - compressed files ☆`542`
- ddddddO/gtree
- lrita/numa - AWARED code. ☆`37`
- shirou/gopsutil
- brianvoe/gofakeit
- eapache/go-resiliency
- mojocn/base64Captcha
- containrrr/shoutrrr
- qmuntal/stateless
- aofei/sandid
- osamingo/gosh
- distatus/battery - platform, normalized battery information library ☆`265`
- mholt/archives - platform library to create & extract archives, compress & decompress files, and walk virtual file systems across various formats ☆`348`
- steambap/captcha
- antham/gommit
- osamingo/indigo
- pioz/faker
- rkoesters/xdg
- dimiro1/health
-
Dependency Injection
- matzefriedrich/parsley - to-use reflection-based dependency injection package that fits into any Go application. ☆`31`
- uber-go/fx
- uber-go/dig
- goioc/di
- logrange/linker
- firasdarwish/ore
- componego/componego - oriented framework for GoLang applications ☆`28`
- gontainer/gontainer - based Dependency Injection container for GO ☆`16`
- google/wire - time Dependency Injection for Go ☆`14,018`
- NVIDIA/gontainer
- junioryono/godi
- muir/nject - safe dependency injection ☆`30`
- d3fvxl/di - featured dependency injection container for go programming language. ☆`239`
- go-kod/kod
- i-love-flamingo/dingo
-
Strings
- huandu/xstrings
- abhimanyu003/sttr - platform, cli app to perform various operations on string ☆`1,231`
- gobeam/stringy
- ozgio/strutil
-
-
Natural Language Processing
-
Language Detection
- pemistahl/lingua-go - language text ☆`1,306`
-
Morphological Analyzers
- ikawaha/kagome - contained Japanese Morphological Analyzer written in pure Go ☆`925`
- nlpodyssey/spago - contained Machine Learning and Natural Language Processing library in Go ☆`1,836`
- afjoseph/RAKE.Go
- jonreiter/govader
-
Translation
- leonelquinteros/gotext
- mehanizm/iuliia-go
- youthlin/t
- nicksnyder/go-i18n
- vorlif/spreak
- invopop/ctxi18n - translating apps easily ☆`88`
-
Slugifiers
- gosimple/slug - friendly slugify with multiple languages support. ☆`1,300`
-
Tokenizers
- go-ego/gse
- pebbe/textcat - gram based text categorization, with support for utf-8 and raw text ☆`73`
-
Transliteration
- alexsergivan/transliterator - > Muenchen) ☆`46`
-
-
Stream Processing
-
Other Software
- whitaker-io/machine
- rulego/streamsql - based stream processing engine for IoT edge. ☆`50`
- reugn/go-streams
- Breeze0806/go-etl - etl is a toolset for data extraction, transformation and loading. ☆`180`
- mariomac/gostream - safe and functional Go Streams processing ☆`169`
-
-
IoT (Internet of Things)
-
Search and Analytic Databases
- Edgenesis/shifu - native IoT gateway ☆`1,389`
- hybridgroup/gobot
- lf-edge/ekuiper
- rulego/rulego - performance, embedded, next-generation component orchestration rule engine framework for Go. ☆`1,372`
- e154/smart-home
-
-
Middlewares
-
Microsoft Word
- rookie-ninja/rk-gin - boot ☆`51`
- urfave/negroni
- justinas/alice
- rs/cors
- rookie-ninja/rk-grpc - boot ☆`79`
- didip/tollbooth - limit HTTP requests. ☆`2,846`
- unrolled/render
- lingrino/go-fault
- jub0bs/cors
- faabiosr/echo-middleware
-
-
Build Automation
-
Package Management
-
HTTP Clients
- anchore/syft
- nao1215/gup - Update binaries installed by "go install" with goroutines. ☆`498`
- chaindead/modup
-
-
Version Control
-
Utility/Miscellaneous
- go-git/go-git
- gabyx/Githooks - repo and shared Git hooks with version control and auto update. [✩Star] if you're using it! ☆`115`
- jfrog/froggit-go - Go is a universal Go library, allowing to perform actions on VCS providers. ☆`49`
- sourcegraph/go-vcs
-
-
Video
-
Utility/Miscellaneous
- bluenviron/gortsplib
- asticode/go-astisub
- asticode/go-astiav
- asticode/go-astits
- Eyevinn/hls-m3u8
- unki2aut/go-mpd - DASH Media Presentation Description (MPD) files ☆`33`
- Eyevinn/mp4ff - info, mp4ff-encrypt, mp4ff-decrypt and other tools. ☆`579`
- adrg/libvlc-go - level media player interface ☆`494`
- korandiz/v4l
-
-
Microsoft Office
-
Microsoft Word
-
Microsoft Excel
-
Search and Analytic Databases
-
-
Performance
-
HTTP Clients
- jaegertracing/jaeger
- pixie-io/pixie - Native Application Observability ☆`6,284`
- arl/statsviz
- nikolaydubina/go-instrument
- joetifa2003/mm-go
-
-
WebAssembly
-
Utility/Miscellaneous
- tinygo-org/tinygo - line tools. Based on LLVM. ☆`16,929`
- agnivade/wasmbrowsertest
- extism/go-sdk - easily run WebAssembly modules in your Go applications ☆`161`
-
-
Webhooks Server
-
Utility/Miscellaneous
- adnanh/webhook
- webhookx-io/webhookx - Generation Webhooks Gateway. ☆`259`
- 42atomys/webhooked
-
-
Credits
-
Utility/Miscellaneous
-
-
Benchmarks
- julienschmidt/go-http-routing-benchmark
- atemerev/skynet
- nikolaydubina/go-ml-benchmarks
- smallnest/go-web-framework-benchmark
- alecthomas/go_serialization_benchmarks
- SimonWaldherr/golang-benchmarks - (measure the speed of golang) ☆`141`
- feyeleanor/gospeed - benchmarks for calculating the speed of language constructs ☆`126`
-
Actor Model
- Tochemey/goakt
- anthdm/hollywood - weight Actor engine written in Golang ☆`2,151`
- asynkron/protoactor-go - Ultra fast distributed actors for Go, C# and Java/Kotlin ☆`5,389`
- ergo-services/ergo - based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang. Zero dependencies. ☆`4,312`
-
Authentication and OAuth
- cristalhq/jwt
- leodip/goiabada
- jellydator/sessionup
- brianvoe/sjwt
- mengzhuo/cookiestxt
- casbin/casbin
- golang-jwt/jwt
- markbates/goth
- golang/oauth2
- openfga/openfga
- aarondl/authboss
- alexedwards/scs
- lestrrat-go/jwx
- openshift/osin
- dghubble/gologin
- zitadel/oidc
- shaj13/go-guardian - Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication. ☆`602`
- ory/keto - first. Available as a service on Ory Network and for self-hosters. ☆`5,214`
- cerbos/cerbos - agnostic, scalable authorization solution that makes user permissions and authorization simple to implement and manage by writing context-aware access control policies for your application resources. ☆`4,167`
- go-jose/go-jose
- abraithwaite/jeff
- Kwynto/gosession
- RijulGulati/otpgen
- icza/session - GAE). ☆`118`
- essentialkaos/branca - Poly1305 AEAD) for Golang ☆`93`
-
Go Compilers
-
Search and Analytic Databases
- go2hx/go2hx - > Haxe source-to-source compiler ☆`144`
- Konstantin8105/f4go
- gopherjs/gopherjs
- yassinebenaid/bunster
- Konstantin8105/c4go
-
-
Generators
-
Search and Analytic Databases
- abice/go-enum
- jmattheis/goverter - safe Go converters by defining function signatures. ☆`790`
- oapi-codegen/oapi-codegen
- dave/jennifer
- hexdigest/gowrap
- awalterschulze/goderive
- rjeczalik/interfaces
- switchupcb/copygen - based code to copy values from type to type and fields from struct to struct by default (copier without reflection). ☆`399`
- reedom/convergen - to-type copy function code generator. ☆`48`
-
-
Audio and Music
- ebitengine/oto - level library to play sound on multiple platforms ☆`1,830`
- DylanMeeus/GoAudio
- gen2brain/malgo
- mewkiz/flac
- tosone/minimp3
- dh1tw/gosamplerate
- gordonklaus/portaudio
-
Blockchain
- ethereum/go-ethereum
- ipfs/kubo
- lightningnetwork/lnd
- cosmos/cosmos-sdk
- gagliardetto/solana-go
- gnolang/gno - based Go virtual machine to build succinct and composable apps + gno.land: a blockchain for timeless code and fair open-source. ☆`1,032`
- cometbft/cometbft - tolerant, deterministic state machine replication engine. A fork and successor to Tendermint Core. ☆`832`
- ChainSafe/gossamer
-
Dynamic DNS
-
Search and Analytic Databases
-
-
Resource Embedding
-
HTTP Clients
-
-
Style Guides
-
Other Software
-
Programming Languages
Categories
Database
95
Software Packages
85
Utilities
82
Networking
65
Miscellaneous
54
Command Line
47
Testing
46
Third-party APIs
43
Distributed Systems
40
Text Processing
35
Database Drivers
35
Web Frameworks
35
Data Structures and Algorithms
34
Messaging
31
Configuration
29
Authentication and OAuth
25
Security
24
Logging
22
Images
21
Server Applications
18
File Handling
18
Code Analysis
17
Game Development
17
Financial
17
GUI
17
Email
16
Embeddable Scripting Languages
15
Natural Language Processing
15
JSON
14
Go Tools
12
Goroutines
12
Job Scheduler
11
ORM
11
Science and Data Analysis
11
Bot Building
11
Middlewares
10
Machine Learning
10
Geographic
10
Template Engines
9
Generators
9
Video
9
Serialization
8
Query Language
8
Continuous Integration
8
Routers
8
Blockchain
8
Validation
8
Error Handling
7
Gophers
7
Artificial Intelligence
7
Benchmarks
7
Date and Time
7
Audio and Music
7
UUID
6
Forms
6
Editor Plugins
5
Performance
5
Stream Processing
5
OpenGL
5
Microsoft Office
5
Go Compilers
5
IoT (Internet of Things)
5
Build Automation
5
Workflow Frameworks
5
Functional
4
Actor Model
4
Version Control
4
Zero Trust
4
Hardware
3
XML
3
Package Management
3
Webhooks Server
3
Go Generate Tools
3
WebAssembly
3
Dynamic DNS
2
Reflection
2
CSS Preprocessors
2
Data Integration Frameworks
2
Windows
2
Concurrency
1
Style Guides
1
Credits
1
Resource Embedding
1
Sub Categories
Search and Analytic Databases
344
Utility/Miscellaneous
219
HTTP Clients
118
Standard CLI
67
DevOps Tools
54
Transliteration
52
Other Software
46
Databases Implemented in Go
31
Testing Frameworks
27
Uncategorized
22
Advanced Console UIs
21
Caches
20
Dependency Injection
15
SQL Query Builders
15
Database Tools
15
Database Schema Migration
14
NoSQL Database Drivers
14
Project Layout
13
Mock
13
Relational Database Drivers
13
Microsoft Word
11
Parsers/Encoders/Decoders
10
Markup Languages
8
Translation
6
Queues
5
Text Analysis
5
Scrapers
5
Formatters
4
Miscellaneous Data Structures and Algorithms
4
Strings
4
Bloom and Cuckoo Filters
4
Maps
4
Interfaces to Multiple Backends
4
Selenium and browser control tools
4
Morphological Analyzers
4
Microsoft Excel
3
Bit-packing and Compression
3
Regular Expressions
2
Tokenizers
2
Bit Sets
2
Sets
2
Sanitation
2
Data Structure and Algorithm Collections
2
Stream Processing
1
Slugifiers
1
Nullable Types
1
Trees
1
Fuzzing
1
Language Detection
1
Fail injection
1
Pipes
1
Keywords
golang
733
go
681
database
67
golang-library
59
cli
58
sql
45
json
45
kubernetes
43
http
39
docker
38
mysql
37
testing
37
postgresql
36
framework
36
distributed-systems
28
library
26
golang-package
25
middleware
24
security
24
cloud-native
23
redis
23
performance
23
sqlite
23
microservice
22
microservices
21
command-line
20
grpc
20
orm
20
devops
20
concurrency
20
parser
19
terminal
18
web
18
cache
17
server
16
configuration
16
dependency-injection
15
generics
15
proxy
15
linux
15
api
15
monitoring
15
postgres
15
rpc
15
windows
15
xml
14
mongodb
14
automation
14
logging
14
config
14