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