Automated. Curated. Ranked.
Go libraries, tools, and applications from the community. This awesome list is automatically maintained with daily GitHub API updates. Projects are re-ranked daily based on current activity metrics.
Daily process: Merge community PRs → Scan repos → Filter stale projects → Recalculate scores → Rebuild list
- AI & Machine Learning
- Audio & Video
- Auth
- Bots & Chat
- CLI & Terminal
- Concurrency
- Configuration
- Data Formats
- Data Structures
- Databases
- DevOps & Build
- Finance & Blockchain
- GUI & Desktop
- Game Development
- Geospatial
- Go Tooling
- Hardware & IoT
- Networking
- Queues & Pub/Sub
- Science
- Scripting
- Security
- Testing & Quality
- Text & NLP
- Third-party APIs
- Utilities
- Version Control & Packages
- Web Development
- Workflow & Scheduling
- sashabaranov/go-openai — OpenAI API client for Go ☆
10,566 - wit-ai/wit-go — Go client for wit.ai HTTP API ☆
170
- ollama/ollama — Run LLMs locally ☆
163,888 - mudler/LocalAI — Local OpenAI alternative ☆
43,196 - tmc/langchaingo — LangChain for Go, the easiest way to write LLM-based programs in Go ☆
8,749 - maximhq/bifrost — Fastest LLM gateway for Go ☆
2,655 - philippgille/chromem-go — Embeddable vector database for Go ☆
879 - universal-tool-calling-protocol/go-utcp — Official Go implementation of the UTCP ☆
101 - presbrey/ollamafarm — Manage multiple Ollama instances ☆
95
- gorgonia/gorgonia — Machine learning library for Go ☆
5,913 - otiai10/gosseract — OCR using Tesseract in Go ☆
3,073 - galeone/tfgo — Tensorflow + Go, the gopher way ☆
2,494 - gomlx/gomlx — GoMLX: An Accelerated Machine Learning Framework For Go ☆
1,331 - jbrukh/bayesian — Naive Bayesian Classification for Golang. ☆
810 - knights-analytics/hugot — Onnx transformer pipelines in Golang ☆
572 - patrikeh/go-deep — Artificial Neural Network ☆
555 - c-bata/goptuna — A hyperparameter optimization framework, inspired by Optuna. ☆
277
- ebitengine/oto — A low-level library to play sound on multiple platforms ☆
1,873 - gordonklaus/portaudio — Go bindings for the PortAudio audio I/O library ☆
831 - DylanMeeus/GoAudio — Go tools for audio processing & creation ☆
408 - gen2brain/malgo — Mini audio library ☆
389 - mewkiz/flac — Package flac provides access to FLAC (Free Lossless Audio Codec) streams. ☆
350 - tosone/minimp3 — Decode mp3 ☆
133
- hybridgroup/gocv — Computer vision with OpenCV 4 ☆
7,396 - anthonynsimon/bild — Image processing algorithms in pure Go ☆
4,176 - cshum/imagor — Fast, secure image processing server and Go library, using libvips ☆
3,911 - thoas/picfit — An image resizing server written in Go ☆
2,327 - gographics/imagick — Go binding to ImageMagick's MagickWand C API ☆
1,864 - tdewolff/canvas — Vector graphics in Go ☆
1,783 - davidbyttow/govips — A lightning fast image processing and resizing library for Go ☆
1,531 - yeqown/go-qrcode — Customizable QR code generator ☆
815 - HugoSmits86/nativewebp — Native webp encoder for Go ☆
393 - auyer/steganography — LSB steganography in pure Go ☆
353 - kolesa-team/go-webp — Simple and fast webp library for golang ☆
303 - Pixboost/transformimgs — Open source image CDN. ☆
289 - qmuntal/gltf — Go library for encoding glTF 2.0 files ☆
275 - gojek/darkroom — Image processing engine and proxy service ☆
236 - aofei/cameron — An avatar generator for Go. ☆
131 - ungerik/go-cairo — Go binding for the cairo graphics library ☆
151 - piglig/go-qr — A native, high-quality and minimalistic QR code generator ☆
47
- asticode/go-astisub — Manipulate subtitles in Go ☆
688 - asticode/go-astiav — Golang ffmpeg and libav C bindings ☆
682 - Eyevinn/mp4ff — MP4/ISOBMFF tools and library ☆
618 - asticode/go-astits — Demux and mux MPEG Transport Streams (.ts) natively in GO ☆
612 - adrg/libvlc-go — Go bindings for libVLC ☆
505 - korandiz/v4l — Facade to the Video4Linux video capture interface. ☆
90 - Eyevinn/hls-m3u8 — HLS m3u8 library in Go ☆
53 - unki2aut/go-mpd — MPEG-DASH manifest library ☆
32 - jonoton/scout — Video surveillance with motion detection ☆
26
- golang-jwt/jwt — Go implementation of JSON Web Tokens (JWT). ☆
8,927 - markbates/goth — Multi-provider authentication ☆
6,467 - golang/oauth2 — Go OAuth2 ☆
5,823 - aarondl/authboss — The boss of http auth. ☆
4,165 - alexedwards/scs — HTTP Session Management for Go ☆
2,531 - lestrrat-go/jwx — Complete JWx implementation ☆
2,325 - openshift/osin — Golang OAuth2 server library ☆
1,934 - dghubble/gologin — Go login handlers for authentication providers (OAuth1, OAuth2) ☆
1,949 - zitadel/oidc — OpenID Connect client and server ☆
1,774 - cristalhq/jwt — Safe, simple and fast JSON Web Tokens for Go ☆
688 - shaj13/go-guardian — Authentication library for Go ☆
610 - go-jose/go-jose — An implementation of JOSE standards (JWE, JWS, JWT) in Go ☆
484 - abraithwaite/jeff — Jeff provides the simplest way to manage web sessions in Go. ☆
271 - Kwynto/gosession — Quick session for net/http ☆
258 - leodip/goiabada — Goiabada is an OAuth2 / OpenID Connect server written in Go. ☆
185 - jellydator/sessionup — Straightforward HTTP session management ☆
130 - brianvoe/sjwt — Simple JWT Golang ☆
122 - essentialkaos/branca — Encrypted API tokens ☆
96 - icza/session — Session management for web servers ☆
118 - mengzhuo/cookiestxt — cookiestxt implement parser of cookies txt format ☆
22
- casbin/casbin — Authorization library for Go ☆
19,893 - ory/keto — Customizable permission server ☆
5,276 - openfga/openfga — Fine-grained authorization server ☆
4,838 - cerbos/cerbos — Open core authorization layer ☆
4,243
- tucnak/telebot — Telebot is a Telegram bot framework in Go. ☆
4,573 - go-telegram/bot — Telegram Bot API Go framework ☆
1,614 - mymmrac/telego — Telegram Bot API library for Go ☆
961 - diamondburned/arikawa — A Golang library and framework for the Discord API. ☆
577 - NicoNex/echotron — An elegant and concurrent library for the Telegram bot API in Go. ☆
422 - gempir/go-twitch-irc — go irc client for twitch.tv ☆
393 - innogames/slack-bot — Slack bot for Jenkins, Jira, PRs ☆
206 - mr-linch/go-tg — Telegram Bot API client ☆
127 - slack-io/slacker — Slack Bot Framework ☆
60 - onrik/micha — Client lib for Telegram bot api ☆
32
- bwmarrin/discordgo — (Golang) Go bindings for Discord ☆
5,793 - slack-go/slack — Slack API in Go ☆
4,901 - huandu/facebook — A Facebook Graph API SDK For Go. ☆
1,446 - chyroc/lark — Lark/Feishu Open API SDK ☆
463 - go-lark/lark — Feishu/Lark SDK for Go ☆
240 - switchupcb/disgo — Next-gen Discord API library ☆
110
- charmbracelet/bubbletea — A powerful little TUI framework ☆
40,094 - antonmedv/fx — Terminal JSON viewer & processor ☆
20,308 - gizak/termui — Golang terminal dashboard ☆
13,523 - charmbracelet/lipgloss — Style definitions for nice terminal layouts ☆
10,713 - jroimartin/gocui — Minimalist Go package aimed at creating Console User Interfaces. ☆
10,520 - charmbracelet/bubbles — TUI components for Bubble Tea ☆
7,895 - c-bata/go-prompt — Interactive prompts for Go ☆
5,469 - pterm/pterm — Modern terminal output library ☆
5,376 - schollz/progressbar — Thread-safe progress bar ☆
4,645 - mum4k/termdash — Terminal-based dashboard ☆
2,977 - guptarohit/asciigraph — ASCII line graphs in terminal ☆
2,961 - briandowns/spinner — Terminal spinner indicators ☆
2,516 - vbauerster/mpb — Multi progress bar ☆
2,483 - muesli/termenv — Terminal color support ☆
1,972 - gookit/color — Terminal color rendering ☆
1,573 - logrusorgru/aurora — ANSI colors for Printf ☆
1,477 - mattn/go-isatty — Check if terminal is TTY ☆
892 - mattn/go-colorable — Colorable writer for Windows ☆
805 - box-cli-maker/box-cli-maker — Render highly customizable boxes in the terminal ☆
617 - Evertras/bubble-table — Table component for Bubble Tea ☆
556 - DMcP89/tinycare-tui — TUI application written in GO inspired by tiny-care-terminal ☆
16
- spf13/cobra — A Commander for modern Go CLI interactions ☆
43,330 - urfave/cli — Fast CLI framework for Go ☆
23,907 - elves/elvish — Scripting shell for Go ☆
6,250 - alecthomas/kingpin — Command-line parser ☆
3,559 - dnote/dnote — Command-line notebook ☆
3,011 - spf13/pflag — POSIX/GNU-style flags ☆
2,712 - jessevdk/go-flags — Command-line option parser ☆
2,691 - alexflint/go-arg — Struct-based argument parsing ☆
2,234 - carapace-sh/carapace-bin — Multi-shell completion binary ☆
1,718 - nanovms/ops — Build and run unikernels ☆
1,468 - carapace-sh/carapace — Multi-shell completion library ☆
1,187 - posener/complete — Bash completion in Go ☆
951 - ddddddO/gtree — Generate ASCII tree from Markdown ☆
327 - leaanthony/clir — Simple CLI library ☆
197 - urfave/sflags — Generate flags from structs ☆
167 - hedzr/cmdr — POSIX-compliant CLI parser ☆
141 - reeflective/readline — Shell library with inputrc ☆
133 - cristalhq/acmd — Simple CLI package ☆
137 - reeflective/console — Console library for Cobra ☆
104 - codingconcepts/env — Tag-based environment configuration for structs ☆
126 - jxskiss/mcli — Minimal but powerful CLI ☆
44 - dixonwille/wlog — Cross-platform logging ☆
67 - DavidGamba/go-getoptions — Command line option parser with completion ☆
61 - nyaosorg/go-readline-ny — Readline for Go ☆
33 - carapace-sh/carapace-spec — Multi-shell completion library ☆
29 - sgreben/flagvar — CLI argument types for flag ☆
48 - hashicorp/cli — CLI library for Go ☆
36
- asynkron/protoactor-go — Ultra fast distributed actors for Go ☆
5,426 - ergo-services/ergo — Actor framework with network transparency ☆
4,449 - anthdm/hollywood — Blazingly fast and light-weight Actor engine written in Golang ☆
2,186 - Tochemey/goakt — Distributed actor framework ☆
324
- panjf2000/ants — ants is the most powerful and reliable pooling solution for Go. ☆
14,342 - benmanns/goworker — Resque-compatible background worker ☆
2,847 - alitto/pond — High-performance worker pool ☆
2,089 - destel/rill — Channel-based concurrency toolkit ☆
1,802 - xxjwxc/gowp — Goroutine worker pool ☆
522 - earthboundkid/flowmatic — Structured concurrency ☆
397 - reugn/async — Async computation package ☆
299 - vladopajic/go-actor — Actor model library ☆
281 - timandy/routine — ThreadLocal for Go ☆
287 - mborders/artifex — In-memory job queue ☆
214
- reugn/go-streams — Stream processing library ☆
2,161 - Breeze0806/go-etl — ETL toolset for Go ☆
184 - fulminate-io/machine — Machine is a workflow/pipeline library for processing data ☆
165 - mariomac/gostream — Java Streams port for Go ☆
170 - rulego/streamsql — SQL-based stream processing for IoT ☆
54
- spf13/viper — Go configuration with fangs ☆
30,113 - caarlos0/env — Parse environment variables to structs ☆
6,023 - knadh/koanf — Lightweight config management ☆
3,889 - alecthomas/kong — Command-line parser for Go ☆
2,985 - ilyakaznacheev/cleanenv — Minimalistic environment config reader ☆
2,066 - adrg/xdg — XDG Base Directory implementation ☆
959 - cristalhq/aconfig — Simple config loader ☆
624 - gookit/config — Config management with formats ☆
578 - nil-go/konf — Simplest config loader for Go ☆
369 - kkyr/fig — Minimalist config library ☆
384 - hjson/hjson-go — Hjson for Go ☆
347 - vrischmann/envconfig — Env config library ☆
250 - chaindead/zerocfg — Zero-effort config management ☆
199 - beatlabs/harvester — Watch and notify config changes ☆
134 - BoRuDar/configuration — Set struct fields from env, flags, files ☆
108 - gurkankaymak/hocon — HOCON config library for Go ☆
88 - PaddleHQ/go-aws-ssm — AWS System Manager interface ☆
62 - go-simpler/env — Load env vars to struct ☆
80 - omeid/uconfig — Lightweight config management ☆
72 - sakirsensoy/genv — Easy env variable handling ☆
43 - num30/config — Declarative configuration ☆
60 - wkhere/bcl — Basic Configuration Language ☆
29 - atelpis/enflag — Unify env and flag parsing ☆
38 - dsbasko/go-cfg — Unified config reading ☆
47 - greencoda/confiq — Config struct decoder ☆
39 - romshark/yamagiconf — YAML config framework ☆
18 - nasermirzaei89/env — Zero-dep env package ☆
22 - deatil/go-array — Read/set map, slice, JSON data ☆
22
- tidwall/gjson — Fast JSON value extraction ☆
15,453 - bytedance/sonic — A blazingly fast JSON serializing & deserializing library ☆
9,256 - Jeffail/gabs — Dynamic JSON parsing ☆
3,529 - valyala/fastjson — Fast JSON parser for Go ☆
2,439 - ohler55/ojg — Optimized JSON for Go ☆
937 - wI2L/jsondiff — JSON Patch diff computation ☆
622 - spyzhov/ajson — Abstract JSON with JSONPath ☆
291 - Andrew-M-C/go.jsonvalue — Unstructured JSON solution ☆
202 - iOliverNguyen/ujson — Minimal JSON parser ☆
85 - neilotoole/jsoncolor — Colorized JSON output ☆
50 - ake-persson/mapslice-json — Ordered JSON map slices ☆
20
- golang/protobuf — Protocol buffers for Go ☆
10,060 - ugorji/go — Codec for msgpack, cbor, json ☆
1,941 - linkedin/goavro — Goavro is a library that encodes and decodes Avro data. ☆
1,055 - fxamacker/cbor — CBOR codec with extensions ☆
1,025 - jszwec/csvutil — CSV to struct mapping ☆
1,030 - ghostiam/binstruct — Binary to struct decoder ☆
112 - csweichel/bel — Generate TypeScript from Go ☆
45 - o1egl/fwencoder — Fixed width file parser ☆
27 - tiendc/go-csvlib — High-level CSV library ☆
18
- miku/zek — Generate Go struct from XML ☆
825 - antchfx/xpath — XPath for Go ☆
735 - antchfx/xmlquery — XPath XML query ☆
486
- RoaringBitmap/roaring — Compressed bitmaps for Go ☆
2,843 - iancmcc/bingo — Zero-allocation binary encoding ☆
50 - amallia/go-ef — A Go implementation of the Elias-Fano encoding ☆
41
- bits-and-blooms/bloom — Bloom filter implementation ☆
2,754 - tylertreat/BoomFilters — Probabilistic data structures for streams ☆
1,644 - seiflotfy/cuckoofilter — Cuckoo Filter: Practically Better Than Bloom ☆
1,218 - OldPanda/bloomfilter — Bloom filter compatible with pybloom ☆
20
- mhmtszr/concurrent-swiss-map — Thread-safe concurrent hash map ☆
262 - goradd/maps — Generic map library for Go ☆
52 - srfrog/dict — Python-like dictionaries for Go ☆
46
- Workiva/go-datastructures — Performant, threadsafe data structures ☆
7,907 - deckarep/golang-set — Generic set type for Go ☆
4,650 - bits-and-blooms/bitset — Go package implementing bitsets ☆
1,485 - liyue201/gostl — Data structures modeled on C++ STL ☆
1,135 - axiomhq/hyperloglog — HyperLogLog with optimizations ☆
1,029 - kelindar/bitmap — Simple dense bitmap index in Go with binary operators ☆
370 - barweiss/go-tuple — Go 1.18+ generic tuple ☆
96 - seiflotfy/count-min-log — Go implementation of Count-Min-Log ☆
68 - s0rg/quadtree — Generic, zero-alloc, 100%-test covered Quadtree for golang ☆
41 - StudioSol/set — Simple set data structure ☆
29 - nazar256/parapipe — Paralleling pipeline ☆
37 - bobg/merkle — Merkle hash trees ☆
21
- gammazero/deque — Fast ring-buffer deque (double-ended queue) ☆
761 - adrianbrad/queue — Multiple queue implementations ☆
331 - embano1/memlog — A Kafka log inspired in-memory and append-only data structure ☆
136 - mikestefanello/backlite — SQLite-backed task queues ☆
137
- golang/groupcache — Distributed cache library ☆
13,340 - dgraph-io/ristretto — A high performance memory-bound Go cache ☆
6,789 - eko/gocache — Multi-store caching library ☆
2,838 - maypok86/otter — A high performance caching library for Go ☆
2,533 - VictoriaMetrics/fastcache — Fast in-memory cache for Go ☆
2,341 - jellydator/ttlcache — An in-memory cache with item expiration and generics ☆
1,220 - viccon/sturdyc — Caching with advanced concurrency ☆
1,246 - EchoVault/SugarDB — Embeddable and distributed in-memory alternative to Redis. ☆
528 - faabiosr/cachego — Golang Cache component - Multiple drivers ☆
372 - Yiling-J/theine-go — high performance in-memory cache ☆
362 - elastic/go-freelru — GC-less, fast and generic LRU cache for Go ☆
261 - samber/hot — In-memory caching library for read-intensive Go applications ☆
242 - naughtygopher/pocache — Preemptive optimistic caching ☆
231 - OrlovEvgeny/go-mcache — Sharded in-memory KV cache ☆
103 - erni27/imcache — A zero-dependency generic in-memory cache Go library ☆
123 - zekroTJA/timedmap — A thread safe map which has expiring key-value pairs. ☆
74 - codingsince1985/couchcache — A RESTful caching micro-service in Go backed by Couchbase ☆
66 - mdaliyan/icache — High-performance generic cache ☆
23
- golang-migrate/migrate — Database migrations. CLI and Golang library. ☆
18,170 - bytebase/bytebase — Database DevSecOps platform ☆
13,768 - pressly/goose — A database migration tool. Supports SQL migrations and Go functions. ☆
10,245 - ariga/atlas — Declarative schema migrations with schema-as-code workflows ☆
8,126 - amacneil/dbmate — A lightweight, framework-agnostic database migration tool. ☆
6,746 - rubenv/sql-migrate — SQL schema migration tool for Go. ☆
3,409 - skeema/skeema — Declarative pure-SQL schema management for MySQL and MariaDB ☆
1,360 - go-gormigrate/gormigrate — Minimalistic database migration helper for Gorm ORM ☆
1,150 - sunary/sqlize — SQL parsing and migration toolkit ☆
124 - robinjoseph08/go-pg-migrations — A Go package to help write migrations with go-pg/pg. ☆
86 - adlio/schema — Embedded schema migration package for Go ☆
42 - khezen/avro — Apache AVRO for go ☆
48 - muir/libschema — database schema migrations on a per-library basis [Go] ☆
17
- vitessio/vitess — Database clustering for MySQL ☆
20,813 - sosedoff/pgweb — Cross-platform client for PostgreSQL databases ☆
9,262 - go-mysql-org/go-mysql — a powerful mysql toolset with Go ☆
4,919 - prest/prest — PostgreSQL REST API server ☆
4,526 - ContentSquare/chproxy — Open-Source ClickHouse http proxy and load balancer ☆
1,438 - cybertec-postgresql/pg_timetable — Advanced PostgreSQL scheduler ☆
1,323 - liweiyi88/onedump — Effortless database administration tool ☆
933 - HDT3213/rdb — Redis RDB parser for Go ☆
598 - nikepan/clickhouse-bulk — Batch inserts for ClickHouse ☆
505 - wesql/wescale — MySQL proxy with read/write split ☆
313 - gatewayd-io/gatewayd — database gateway for building data-driven applications ☆
277 - sj14/dbbench — Database benchmarking tool ☆
115 - bartventer/gorm-multitenancy — Multi-tenancy for GORM ☆
78 - kazhuravlev/database-gateway — Safe access to production databases ☆
30 - codingconcepts/dg — Generate CSV from data models ☆
43
- prometheus/prometheus — The Prometheus monitoring system and time series database. ☆
62,985 - milvus-io/milvus — Cloud-native vector database ☆
43,069 - pingcap/tidb — Cloud-native distributed SQL DB ☆
39,841 - cockroachdb/cockroach — Cloud native distributed SQL database ☆
31,959 - influxdata/influxdb — Scalable datastore for metrics, events, and real-time analytics ☆
31,312 - dgraph-io/dgraph — high-performance graph database for real-time use cases ☆
21,610 - dolthub/dolt — Dolt – Git for Data ☆
20,372 - rqlite/rqlite — Lightweight distributed SQLite ☆
17,330 - VictoriaMetrics/VictoriaMetrics — Fast time series database and monitoring ☆
16,413 - dgraph-io/badger — Fast key-value DB in Go. ☆
15,500 - dicedb/dicedb — Open-source, low-latency key/value engine built on Valkey with hierarchical storage tiers. ☆
10,695 - etcd-io/bbolt — An embedded key/value database for Go. ☆
9,391 - codenotary/immudb — Immutable database with SQL ☆
8,926 - cockroachdb/pebble — RocksDB/LevelDB inspired key-value database in Go ☆
5,791 - rosedblabs/rosedb — Fast key/value storage engine ☆
4,878 - tidwall/buntdb — Embeddable in-memory key/value DB ☆
4,837 - nalgeon/redka — Redis re-implemented with SQL ☆
4,532 - HDT3213/godis — A Golang implemented Redis Server and Cluster ☆
3,826 - nutsdb/nutsdb — Simple embeddable key/value store ☆
3,559 - lindb/lindb — Scalable time-series database ☆
3,061 - lotusdblabs/lotusdb — Key-value database with LSM and B+ tree ☆
2,251 - kelindar/column — Columnar in-memory store ☆
1,508 - akrylysov/pogreb — Embedded key-value store for read-heavy workloads written in Go ☆
1,349 - objectbox/objectbox-go — Embedded database for Go ☆
1,258 - couchbase/moss — Simple, fast key-val storage ☆
1,017 - amit-davidson/LibraDB — Simple persistent key/value store ☆
198 - claygod/transaction — Embedded database for accounts transactions. ☆
139 - xgzlucario/rotom — Tiny Redis server in Go ☆
41
- seaweedfs/seaweedfs — Fast distributed storage for blobs ☆
30,700 - juicedata/juicefs — Distributed POSIX filesystem ☆
13,285
- philippgille/gokv — Key-value store abstraction ☆
822 - avito-tech/go-transaction-manager — Transaction manager for Go ☆
386 - viant/dsc — Datastore Connectivity in go ☆
35 - fogfish/dynamo — Generic Golang Key/Value trait for AWS storage services ☆
22
- redis/go-redis — Redis Go client ☆
21,949 - gomodule/redigo — Go client for Redis ☆
9,879 - mongodb/mongo-go-driver — The Official Golang driver for MongoDB ☆
8,511 - bradfitz/gomemcache — Go Memcached client library #golang ☆
1,866 - qiniu/qmgo — Go driver for MongoDB ☆
1,349 - Kamva/mgm — Mongo Go Models (mgm) is a fast and simple MongoDB ODM for Go (based on official Mongo Go Driver) ☆
764 - aerospike/aerospike-client-go — Aerospike Client Go ☆
458 - couchbase/gocb — The Couchbase Go SDK ☆
376 - go-kivik/kivik — CouchDB client interface ☆
338 - couchbase/go-couchbase — Couchbase client in Go ☆
324 - chenmingyong0423/go-mongox — MongoDB driver wrapper with generics ☆
217 - aliexpressru/gomemcached — Binary Memcached client with sharding ☆
22 - btnguyen2k/gocosmos — Go database/sql driver for Azure Cosmos DB SQL API ☆
22
- go-gorm/gorm — The fantastic ORM library for Golang, aims to be developer friendly ☆
39,609 - ent/ent — An entity framework for Go ☆
16,942 - aarondl/sqlboiler — Generate a Go ORM tailored to your database schema. ☆
6,978 - uptrace/bun — SQL-first Golang ORM ☆
4,683 - upper/db — Data access layer for databases ☆
3,646 - huandu/go-sqlbuilder — SQL builder with zero-config ORM ☆
1,669 - stephenafamo/bob — SQL builder with ORM generator ☆
1,647 - go-rel/rel — Modern ORM for Golang ☆
781 - FrancoLiberali/cql — CQL: Compiled Query Language ☆
17 - hashicorp/go-dbw — A simple package that encapsulates database operations. ☆
16
- 99designs/gqlgen — go generate based graphql server library ☆
10,675 - TomWright/dasel — Query and modify data formats ☆
7,871 - graph-gophers/graphql-go — GraphQL server with a focus on ease of use ☆
4,747 - bhmj/jsonslice — json slicer ☆
92 - hashicorp/mql — Model Query Language (mql) is a query language for your database models. ☆
65 - ccbrown/api-fu — A collection of Go packages for creating robust GraphQL APIs ☆
57 - AsaiYusuke/jsonpath — JSONPath query library ☆
30
- go-sql-driver/mysql — MySQL driver for database/sql ☆
15,383 - jackc/pgx — PostgreSQL driver and toolkit for Go ☆
13,480 - denisenkom/go-mssqldb — Microsoft SQL server driver written in go language ☆
1,880 - ncruces/go-sqlite3 — Go bindings to SQLite using wazero ☆
920 - godror/godror — GO DRiver for ORacle DB ☆
588 - cvilsmeier/sqinn-go — Golang SQLite without cgo ☆
512 - VinGarcia/ksql — A Simple and Powerful Golang SQL Library ☆
355 - surrealdb/surrealdb.go — SurrealDB SDK for Golang ☆
306 - nakagami/firebirdsql — Firebird RDBMS sql driver for Go (golang) ☆
256 - ydb-platform/ydb-go-sdk — Pure Go native and database/sql driver for YDB ☆
175 - rqlite/gorqlite — A Go client for rqlite, the distributed database built on SQLite ☆
179 - apache/calcite-avatica-go — Apache Calcite Go ☆
124 - viant/bgc — Datastore Connectivity for BigQuery in go ☆
21
- sqlc-dev/sqlc — Generate type-safe code from SQL ☆
17,060 - Masterminds/squirrel — Fluent SQL generation for golang ☆
7,878 - xo/dbtpl — Generate Go code for databases ☆
3,885 - go-jet/jet — Type-safe SQL builder with codegen ☆
3,586 - doug-martin/goqu — SQL builder and query library for golang ☆
2,639 - didi/gendry — a golang library for sql builder ☆
1,638 - lqs/sqlingo — A lightweight DSL & ORM which helps you to write SQL in Go. ☆
449 - nullism/bqb — Lightweight query builder ☆
187 - arthurkushman/buildsqlx — Go database query builder library for PostgreSQL ☆
185 - galeone/igor — igor is an abstraction layer for PostgreSQL with a gorm like syntax. ☆
126 - cristalhq/builq — Easily build SQL queries in Go. ☆
97 - JiveGroup/FluentSQL — Fluent SQL - flexible and powerful SQL string builder ☆
18
- elastic/go-elasticsearch — The official Go client for Elasticsearch ☆
6,031 - ClickHouse/clickhouse-go — Golang driver for ClickHouse ☆
3,252 - sourcegraph/zoekt — Fast trigram-based code search ☆
1,423 - sdqri/effdsl — Elasticsearch query builder for golang ☆
34
- restic/restic — Fast, secure backup program ☆
32,488 - gilbertchen/duplicacy — Cloud backup tool ☆
5,629
- air-verse/air — Live reload for Go apps ☆
23,078 - go-task/task — A fast, cross-platform build tool inspired by Make, designed for modern workflows. ☆
14,990 - joerdav/xc — Markdown defined task runner. ☆
1,372 - goyek/goyek — Task automation Go library ☆
680 - flowexec/flow — Local developer automation platform that flows with you ☆
132
- harness/harness — End-to-end developer platform ☆
33,841 - woodpecker-ci/woodpecker — Simple, powerful CI/CD engine ☆
6,576 - ovh/cds — Enterprise CI/CD platform ☆
4,806 - raviqqe/muffet — Fast website link checker ☆
2,590 - pipe-cd/pipecd — The One CD for All {applications, platforms, operations} ☆
1,259 - jenkins-zh/jenkins-cli — Jenkins CLI allows you to manage your Jenkins in an easy way ☆
410 - vladopajic/go-test-coverage — Report test coverage threshold issues ☆
223 - appleboy/drone-scp — Copy files via SSH for Drone ☆
167 - nikogura/gomason — A tool for testing, building, signing, and publishing binaries. ☆
66 - appleboy/drone-jenkins — Drone plugin for trigger Jenkins jobs. ☆
41 - opnlabs/dot — Minimal CI using Docker ☆
33 - gha-common/go-beautiful-html-coverage — GitHub Action for code coverage reports ☆
21
- moby/moby — Container ecosystem components ☆
71,463 - traefik/traefik — The Cloud Native Application Proxy ☆
61,981 - ko-build/ko — Build and deploy Go applications ☆
8,352 - s0rg/decompose — Reverse-engineering tool for docker environments ☆
123 - x1unix/docker-go-mingw — Docker for Go with MinGW toolchain ☆
53
- go-gitea/gitea — Self-hosted Git service ☆
54,010 - moovweb/gvm — Go Version Manager ☆
11,545 - TwiN/gatus — Automated developer-oriented status page with alerting and incident support ☆
10,274 - bitfield/script — Making it easy to write shell-like scripts in Go ☆
6,939 - fleetdm/fleet — Open device management ☆
6,101 - taubyte/tau — Fullstack Workspace for Humans & Machines ☆
4,975 - megaease/easeprobe — Service health monitoring tool ☆
2,299 - ajvb/kala — Modern Job Scheduler ☆
2,162 - gabrie30/ghorg — Clone entire GitHub orgs ☆
1,985 - sanbornm/go-selfupdate — Enable your Go applications to self update ☆
1,678 - yusufcanb/tlm — Local CLI Copilot, powered by Ollama. ☆
1,471 - ovh/utask — Automation engine with YAML config ☆
1,364 - TimothyYe/skm — A simple and powerful SSH keys manager ☆
1,009 - scaleway/scaleway-cli — Command Line Interface for Scaleway ☆
957 - alexliesenfeld/health — A simple and flexible health check library for Go. ☆
830 - kool-dev/kool — Dev to cloud web apps made easy ☆
712 - kevincobain2000/gobrew — Go version manager without root ☆
412 - appleboy/easyssh-proxy — Simple SSH protocol implementation ☆
347 - xitonix/trubka — A CLI tool for Kafka ☆
337 - emicklei/mora — MongoDB generic REST server in Go ☆
315 - thevxn/dish — A simple, remotely configurable monitoring service. ☆
275 - jkaninda/goma-gateway — Lightweight API gateway and proxy ☆
175 - datarootsio/tf-profile — Profile Terraform runs ☆
164 - kazhuravlev/healthcheck — Readiness probes for Kubernetes application ☆
21
- hashicorp/packer — Build machine images from config ☆
15,616 - pomerium/pomerium — Pomerium is an identity and context-aware access proxy. ☆
4,687 - peak/s5cmd — Parallel S3 and local filesystem execution tool. ☆
3,934 - aptly-dev/aptly — aptly - Debian repository management tool ☆
2,776 - KusionStack/kusion — Declarative platform orchestrator ☆
1,279 - oxyno-zeta/s3-proxy — S3 reverse proxy with auth ☆
440
- kubernetes/kubernetes — Production-Grade Container Scheduling and Management ☆
120,856 - k3s-io/k3s — Lightweight Kubernetes ☆
32,340 - kubernetes/minikube — Run Kubernetes locally ☆
31,541 - kubernetes-sigs/kind — Kubernetes IN Docker - local clusters for testing Kubernetes ☆
15,053 - kubeshark/kubeshark — API traffic analyzer for Kubernetes ☆
11,805 - flannel-io/flannel — Network fabric for containers ☆
9,409 - getanteon/anteon — eBPF Kubernetes monitoring tool ☆
8,541 - kubevela/kubevela — The Modern Application Platform. ☆
7,704 - k3d-io/k3d — Little helper to run CNCF's k3s in Docker ☆
6,286 - stefanprodan/podinfo — Go microservice template for Kubernetes ☆
5,839 - apecloud/kubeblocks — Kubernetes operator for databases ☆
2,987 - kubenetworks/kubevpn — Connect to Kubernetes cluster network ☆
1,297 - abahmed/kwatch — monitor & detect crashes in your Kubernetes(K8s) cluster instantly ☆
998 - getanteon/alaz — eBPF agent for K8s observability ☆
718
- grafana/k6 — A modern load testing tool, using Go and JavaScript ☆
30,027 - tsenart/vegeta — HTTP load testing tool and library. It's over 9000! ☆
24,934 - codesenberg/bombardier — Fast cross-platform HTTP benchmarking tool written in Go ☆
6,742 - rogerwelin/cassowary — Modern cross-platform HTTP load-testing tool written in Go ☆
808
- axllent/mailpit — An email and SMTP testing tool with API for developers ☆
8,846 - foxcpp/maddy — Composable all-in-one mail server. ☆
5,869 - mjl-/mox — Modern secure mail server ☆
5,536 - matcornic/hermes — Clean HTML email generator ☆
3,028 - AfterShip/email-verifier — Email verification without sending emails ☆
1,523 - wneessen/go-mail — Easy to use, yet comprehensive library for sending mails with Go ☆
1,291 - sendgrid/sendgrid-go — The Official Twilio SendGrid Golang API Library ☆
1,048 - mailgun/mailgun-go — Go library for the Mailgun API. ☆
743 - xhit/go-simple-mail — Simple mail sending with TLS/SSL ☆
693 - emersion/go-message — Internet Message Format library ☆
441 - vanng822/go-premailer — Inline CSS for HTML mail ☆
187 - truemail-rb/truemail-go — Email validator via Regex, DNS, SMTP ☆
130 - toorop/go-dkim — DKIM package for golang ☆
99 - dimuska139/go-email-normalizer — Normalize email addresses ☆
77 - valord577/mailx — A library that makes it easier to send email via SMTP. ☆
20
- ethereum/go-ethereum — Go implementation of the Ethereum protocol ☆
50,884 - ipfs/kubo — An IPFS implementation in Go ☆
16,935 - lightningnetwork/lnd — Lightning Network Daemon ☆
8,118 - cosmos/cosmos-sdk — A Framework for Building High Value Public Blockchains ☆
6,939 - gagliardetto/solana-go — Go SDK library and RPC client for the Solana Blockchain ☆
1,512 - gnolang/gno — Interpreted Go virtual machine ☆
1,056 - cometbft/cometbft — Byzantine fault-tolerant consensus ☆
864 - ChainSafe/gossamer — Go Implementation of the Polkadot Host ☆
455
- shopspring/decimal — Arbitrary-precision fixed-point decimal numbers in Go ☆
7,248 - achannarasappa/ticker — Terminal stock and crypto tracker ☆
5,959 - Rhymond/go-money — Go implementation of Fowler's Money pattern ☆
1,883 - c9s/bbgo — The modern cryptocurrency trading bot framework written in Go. ☆
1,603 - formancehq/ledger — The programmable open source core ledger for fintech ☆
1,158 - bojanz/currency — Currency handling for Go. ☆
627 - moov-io/ach — ACH file reader, writer, validator ☆
530 - invopop/gobl — Go Business Language ☆
258 - govalues/decimal — Correctly rounded decimals for Go ☆
223 - quagmt/udecimal — High-precision decimal library ☆
174 - jovandeginste/payme — QR code generator (ASCII & PNG) for SEPA payments ☆
89 - jokruger/dec128 — High performance 128-bit fixed-point decimal numbers in go. ☆
41 - govalues/money — Correctly rounded monetary amounts and exchange rates for Go ☆
49 - nikolaydubina/fpmoney — Fixed-Point Decimal Money ☆
35 - nikolaydubina/fpdecimal — Fixed-Point Decimals ☆
34
- stripe/stripe-go — Stripe API library for Go ☆
2,536 - plutov/paypal — Golang client for PayPal REST API ☆
773 - brunomvsouza/ynab.go — Client for YNAB API ☆
79
- fyne-io/fyne — Cross platform GUI toolkit in Go inspired by Material Design ☆
27,975 - webview/webview — Tiny webview library for Go ☆
13,925 - therecipe/qt — Qt bindings for Go ☆
10,779 - go-vgo/robotgo — Cross-platform RPA and GUI automation ☆
10,624 - maxence-charriere/go-app — Build progressive web apps with Go and WASM ☆
8,862 - progrium/darwinkit — Native Mac APIs for Go. Previously known as MacDriver ☆
5,404 - getlantern/systray — Cross-platform systray library ☆
3,667 - cogentcore/core — Powerful GUI framework for Go ☆
2,307 - gotk3/gotk3 — Go bindings for GTK3 ☆
2,203 - roblillack/spot — React-like desktop GUI toolkit for Go ☆
1,257 - ncruces/zenity — Zenity dialogs for Golang, Windows, macOS ☆
894 - energye/energy — CEF-based GUI framework ☆
578 - AllenDang/cimgui-go — Auto generated Go wrapper for Dear ImGui via cimgui ☆
502 - richardwilkes/unison — Unified GUI toolkit for Go ☆
319
- go-ole/go-ole — win32 ole implementation for golang ☆
1,293 - gonutz/d3d9 — Direct3D9 wrapper for Go. ☆
163
- hajimehoshi/ebiten — A dead simple 2D game engine for Go ☆
12,991 - fogleman/nes — NES emulator written in Go. ☆
5,640 - topfreegames/pitaya — Game server with clustering support ☆
2,743 - xiaonanln/goworld — Distributed game server engine ☆
2,708 - gen2brain/raylib-go — Go bindings for raylib ☆
2,370 - oakmound/oak — A pure Go game engine ☆
1,653 - JoelOtter/termloop — Terminal-based game engine for Go, built on top of Termbox ☆
1,470 - gopxl/pixel — A hand-crafted 2D game library in Go. ☆
379 - ungerik/go3d — A performance oriented 2D/3D math package for Go ☆
338 - mlange-42/ark — Ark -- Archetype-based Entity Component System (ECS) for Go. ☆
223 - kelindar/tile — 2D grid engine for games ☆
212 - andygeiss/ecs — Entity Component System for games ☆
171 - gonutz/prototype — 2D game prototyping framework ☆
107 - s0rg/grid — Generic 2D grid ☆
25 - s0rg/fantasyname — RinkWorks fantasy name generator for golang ☆
39
- go-gl/glfw — Go bindings for GLFW 3 ☆
1,664 - go-gl/gl — Go bindings for OpenGL (generated via glow) ☆
1,189 - go-gl/mathgl — A pure Go 3D math library. ☆
596
- tidwall/tile38 — Real-time Geospatial and Geofencing ☆
9,587 - golang/geo — S2 geometry library in Go ☆
1,823 - consbio/mbtileserver — MBTiles server in Go ☆
771 - spatial-go/geoos — Spatial data and geometric algorithms ☆
532 - paulmach/osm — OpenStreetMap data library ☆
444 - uber/h3-go — H3 hexagonal geospatial indexing ☆
410 - airbusgeo/godal — GDAL wrapper for Go ☆
175 - peterstace/simplefeatures — OpenGIS Simple Feature implementation ☆
169 - wroge/wgs84 — Zero-dep coordinate transformations ☆
140 - pantrif/s2-geojson — Visualize S2 cells on a map ☆
36
- gopherjs/gopherjs — A compiler from Go to JavaScript for running Go code in a browser ☆
13,130 - yassinebenaid/bunster — Compile shell scripts to static binaries. ☆
2,650 - Konstantin8105/c4go — Transpiling C code to Go code ☆
379 - go2hx/go2hx — Import Go libraries in Haxe ☆
150
- fatih/vim-go — Go development plugin for Vim ☆
16,236 - visualfc/liteide — LiteIDE is a simple, open source, cross-platform Go IDE. ☆
7,756 - nsf/gocode — An autocompletion daemon for the Go programming language ☆
5,001 - golang/vscode-go — Go extension for Visual Studio Code ☆
4,211 - dominikh/go-mode.el — Emacs mode for the Go programming language ☆
1,449 - incu6us/goimports-reviser — Imports sorting and code formatting tool ☆
714
- xuri/xgen — XSD parser and code generator ☆
406 - kazhuravlev/options-gen — Codegen for functional options in go projects ☆
103 - g4s8/envdoc — Go tool to generate documentation for environment variables ☆
94
- go-swagger/go-swagger — Swagger 2.0 implementation for go ☆
9,950 - ondrajz/go-callvis — Visualize call graph of a Go program using Graphviz ☆
6,454 - Zxilly/go-size-analyzer — Analyze compiled Go binary size ☆
2,068 - pointlander/peg — PEG parser generator for Go ☆
1,101 - janpfeifer/gonb — Go notebook kernel for Jupyter ☆
991 - safedep/vet — Protect against malicious open source packages ☆
963 - alajmo/sake — Task runner for local and remote hosts ☆
744 - goccmack/gocc — Parser and scanner generator ☆
658 - moshebe/gebug — Debug Dockerized Go apps ☆
634 - iyashjayesh/monigo — Performance monitoring library ☆
404 - edwingeng/hotswap — Hot reload Go code without restart ☆
422 - becheran/roumon — Universal goroutine monitor using pprof and termui ☆
234 - bitfield/gotestdox — A tool for formatting Go test results as readable documentation ☆
194 - ahmedakef/gotutor — Online Go Debugger & Visualizer ☆
75 - bobg/decouple — find overspecified function parameters in Go code ☆
35 - bobg/modver — a tool that helps you obey semantic versioning rules in your Go module ☆
21 - dustinblackman/gomodrun — Run binaries from go.mod ☆
38
- shirou/gopsutil — psutil for golang ☆
11,727 - arduino/arduino-cli — Arduino command line tool ☆
4,810 - jaypipes/ghw — Go HardWare discovery/inspection library ☆
1,826 - zcalusic/sysinfo — Linux system information library ☆
575
- hybridgroup/gobot — Robotics and IoT framework ☆
9,382 - lf-edge/ekuiper — Lightweight data stream processing engine for IoT edge ☆
1,682 - rulego/rulego — Lightweight rule engine framework ☆
1,432 - Edgenesis/shifu — Kubernetes-native IoT gateway ☆
1,403 - e154/smart-home — software package for automation ☆
96 - maxatome/go-vitotrol — golang client library to Viessmann Vitotrol web service ☆
23
- hashicorp/raft — Golang implementation of the Raft consensus protocol ☆
8,939 - lni/dragonboat — Multi-group Raft consensus library ☆
5,299 - etcd-io/raft — Raft library for maintaining a replicated state machine ☆
989 - vadiminshakov/committer — 2PC and 3PC protocols for Go ☆
40
- miekg/dns — DNS library in Go ☆
8,641 - 0xERR0R/blocky — DNS ad-blocker for local networks ☆
6,151 - hashicorp/mdns — Simple mDNS client/server library in Golang ☆
1,343 - semihalev/sdns — High-performance recursive DNS ☆
1,032 - mosajjal/dnsmonster — Passive DNS Capture and Monitoring Toolkit ☆
352 - joeig/go-powerdns — PowerDNS API client for Go (community project) ☆
103
- luraproject/lura — Ultra-performant API gateway ☆
6,740 - chrislusf/gleam — Distributed map/reduce in Go ☆
3,555 - bsm/redislock — Simplified distributed locking implementation using Redis ☆
1,740 - k8gb-io/k8gb — A cloud native Kubernetes Global Balancer ☆
1,149 - temporalio/sdk-go — Temporal Go SDK ☆
837 - AppsFlyer/go-sundheit — Health checks library for Go ☆
560 - tarmac-project/tarmac — Functions as Monolith or Microservices ☆
342 - italolelis/outboxer — A library that implements the outboxer pattern in go ☆
166 - capillariesio/capillaries — Distributed batch data processing framework ☆
68 - svcavallar/celeriac.v1 — Celery client for Go ☆
76 - sanketplus/go-mysql-lock — MySQL Backed Locking Primitive ☆
66 - pdupub/go-pdu — An PDU implementation in Go ☆
49 - mbrostami/consistenthash — Consistent hashing implementation ☆
31
- valyala/fasthttp — Fast HTTP package for Go ☆
23,281 - elazarl/goproxy — An HTTP proxy library for Go ☆
6,612 - wzshiming/httpproxy — HTTP proxy handler and dialer ☆
31
- go-resty/resty — Simple HTTP, REST, and SSE client library for Go ☆
11,563 - imroc/req — Simple Go HTTP client with Black Magic ☆
4,765 - gojek/heimdall — An enhanced HTTP client for Go ☆
2,700 - hashicorp/go-retryablehttp — Retryable HTTP client in Go ☆
2,278 - levigross/grequests — A Go "clone" of the great and famous Requests library ☆
2,183 - dghubble/sling — A Go HTTP client library for creating and sending API requests ☆
1,717 - earthboundkid/requests — HTTP requests for Gophers ☆
1,670 - bogdanfinn/tls-client — HTTP client with TLS fingerprint spoofing ☆
1,487 - Noooste/azuretls-client — HTTP client to spoof TLS/JA3 fingerprint ☆
432 - monaco-io/request — go request, go http client ☆
295 - opus-domini/fast-shot — Fluent HTTP client for Go ☆
117 - go-zoox/fetch — Powerful HTTP client for Go ☆
89 - NdoleStudio/go-otelroundtripper — OpenTelemetry metrics for HTTP clients ☆
85 - rezmoss/axios4go — Axios-inspired HTTP client ☆
32
- caddyserver/caddy — Multi-platform web server with HTTPS ☆
70,494 - pocketbase/pocketbase — Open Source realtime backend in 1 file ☆
56,508 - etcd-io/etcd — Distributed key-value store ☆
51,568 - drakkan/sftpgo — Full-featured SFTP/FTP/HTTP server ☆
11,727 - adnanh/webhook — Lightweight webhook server ☆
11,632 - roadrunner-server/roadrunner — High-performance PHP application server ☆
8,407 - easegress-io/easegress — A Cloud Native traffic orchestration system ☆
5,870 - charmbracelet/wish — Make SSH apps, just like that! ☆
4,972 - flipt-io/flipt — Enterprise-ready, Git native feature management solution ☆
4,727 - getfider/fider — Open platform to collect and prioritize feedback ☆
4,117 - xyproto/algernon — Web server with Lua and Markdown ☆
2,991 - openflagr/flagr — Feature flagging and A/B testing ☆
2,575 - thomaspoignant/go-feature-flag — Open source feature flag solution ☆
1,949 - msoap/shell2http — Executing shell commands via HTTP server ☆
1,476 - openrundev/openrun — Open source Cloud Run alternative ☆
803 - webhookx-io/webhookx — The Next-Generation Webhooks Gateway. ☆
273 - baalimago/wd-41 — Web-Development 41, a static web server with live-reload ☆
151 - blind-oracle/cortex-tenant — Prometheus proxy with tenant ID injection ☆
133 - rekby/lets-proxy2 — Reverse proxy with auto TLS ☆
101 - 42atomys/webhooked — A webhook receiver on steroids. ☆
42
- fortio/fortio — Load testing and echo server ☆
3,679 - hashicorp/go-getter — Download files from URLs ☆
1,808 - TimothyYe/godns — Dynamic DNS client for multiple providers ☆
1,739 - cavaliergopher/grab — Download manager package ☆
1,472 - schollz/peerdiscovery — Cross-platform local peer discovery ☆
668 - fclairamb/ftpserverlib — FTP server library for Go ☆
463 - skibish/ddns — Personal DDNS client with Digital Ocean Networking DNS as backend. ☆
267 - assafmo/joincap — Merge pcap files ☆
221 - c-robinson/iplib — A library for working with IP addresses and networks in Go ☆
151 - gaissmai/bart — Balanced routing table ☆
120 - alegrey91/fwdctl — Manage IPTables forwards via CLI ☆
72
- anacrolix/torrent — Full-featured BitTorrent client package and utilities ☆
5,975 - dragonflyoss/dragonfly — P2P-based container image distribution ☆
3,051 - cenkalti/rain — BitTorrent client and library in Go ☆
1,111 - anacrolix/dht — DHT for BitTorrent ☆
348
- pion/webrtc — Pure Go implementation of the WebRTC API ☆
16,098 - quic-go/quic-go — A production-ready QUIC implementation in pure Go ☆
11,461 - google/gopacket — Provides packet processing capabilities for Go ☆
6,753 - osrg/gobgp — BGP implemented in the Go Programming Language ☆
3,990 - lxzan/gws — Fast websocket server and client ☆
1,715 - gosnmp/gosnmp — An SNMP library written in Go ☆
1,241 - bluenviron/gortsplib — RTSP client and server library for the Go programming language ☆
895 - ccding/go-stun — A go implementation of the STUN client (RFC 3489 and RFC 5389) ☆
718 - google/gnxi — gNXI Tools - gRPC Network Management/Operations Interface Tools ☆
282 - jeroenrinzema/psql-wire — PostgreSQL wire protocol for Go ☆
219 - jimlambrt/gldap — Build LDAP services w/ Go ☆
120 - soypat/natiu-mqtt — Extensible MQTT for embedded systems ☆
104
- grpc/grpc-go — The Go language implementation of gRPC. HTTP/2 based RPC ☆
22,814 - lesismal/arpc — Two-way RPC with broadcast support ☆
1,089 - ybbus/jsonrpc — A simple go implementation of json rpc 2.0 client over http ☆
369 - osamingo/jsonrpc — The jsonrpc package helps implement of JSON-RPC 2.0 ☆
193
- gliderlabs/ssh — Easy SSH servers in Golang ☆
4,098 - pkg/sftp — SFTP support for the go.crypto/ssh package ☆
1,633 - masterzen/winrm — Windows remote command library ☆
461
- panjf2000/gnet — High-performance event-loop network ☆
11,103 - xtaci/kcp-go — A crypto-secure Reliable-UDP library for Golang with FEC support. ☆
4,492 - cloudwego/netpoll — High-performance I/O framework ☆
4,533 - lesismal/nbio — High-performance network library ☆
2,702 - xtaci/gaio — High-performance, minimalist async-io (proactor) networking for Golang. ☆
1,077 - cheng-zhongliang/event — Simple I/O event notification library wirtten in Golang ☆
119 - fish-tennis/gnet — high performance net library for game server ☆
27
- cloudflare/cloudflared — Cloudflare Tunnel client ☆
13,302 - xjasonlyu/tun2socks — TUN to SOCKS proxy ☆
4,929 - songgao/water — A simple TUN/TAP library written in native Go. ☆
2,144 - NodePassProject/nodepass — Secure TCP/UDP tunneling with TLS ☆
2,070
- nats-io/nats-server — High-performance NATS message server ☆
19,257 - emitter-io/emitter — High-performance pub/sub broker ☆
4,001 - mochi-mqtt/server — Embeddable MQTT v5 broker ☆
1,800
- hibiken/asynq — Simple, reliable, and efficient distributed task queue in Go ☆
12,971 - IBM/sarama — Sarama is a Go library for Apache Kafka. ☆
12,433 - centrifugal/centrifugo — Scalable real-time messaging server ☆
10,011 - ThreeDotsLabs/watermill — Building event-driven applications the easy way in Go. ☆
9,565 - appleboy/gorush — A push notification server written in Go (Golang). ☆
8,695 - RichardKnop/machinery — Async task queue with message passing ☆
7,951 - nats-io/nats.go — Golang client for NATS, the cloud native messaging system. ☆
6,472 - dunglas/mercure — Server-Sent Events hub ☆
5,196 - confluentinc/confluent-kafka-go — Confluent's Apache Kafka Golang client ☆
5,108 - olahol/melody — Minimalist websocket framework for Go ☆
4,067 - sideshow/apns2 — Apple Push Notification Service ☆
3,163 - lovoo/goka — Kafka stream processing library ☆
2,507 - rabbitmq/amqp091-go — An AMQP 0-9-1 Go client maintained by the RabbitMQ team ☆
1,971 - asaskevich/EventBus — [Go] Lightweight eventbus with async compatibility for Go ☆
1,961 - containrrr/shoutrrr — Notification library for gophers and their furry friends. ☆
1,518 - pebbe/zmq4 — A Go interface to ZeroMQ version 4 ☆
1,248 - timbray/quamina — Fast pattern-matching library ☆
480 - cskr/pubsub — A simple pubsub package for go. ☆
448 - jandelgado/rabtap — RabbitMQ wire tap and swiss army knife ☆
279 - mehdihadeli/Go-MediatR — Mediator pattern for CQRS ☆
276 - goptics/varmq — Zero-dep message queue library ☆
180 - robinjoseph08/redisqueue — Redis streams producer and consumer ☆
139 - oagudo/outbox — Transactional outbox pattern ☆
118 - hyperonym/ratus — RESTful async task queue server ☆
124 - furdarius/rabbitroutine — RabbitMQ auto-reconnect library ☆
114 - dailymotion/oplog — A generic oplog/replication system for microservices ☆
110 - Protocol-Lattice/GoEventBus — A lock-free, ultra-fast event bus for Go ☆
57 - jirenius/go-res — RES Service protocol library for Go ☆
67 - SchwarzDigits/hypermatch — High-performance rule matching ☆
33
- gonum/gonum — Numeric libraries for Go ☆
8,329 - gonum/plot — Plotting and visualization ☆
2,945 - paulmach/orb — 2D geometry types and utilities ☆
1,096 - madelynnblue/go-dsp — Digital Signal Processing for Go ☆
907 - bebop/poly — Synthetic biology library for Go ☆
720 - hmdsefi/gograph — Generic graph algorithms library ☆
107 - nikolaydubina/jsonl-graph — JSONL Graph Tools ☆
77 - claygod/PiHex — Generate hexadecimal Pi digits ☆
20
- php/frankenphp — The modern PHP app server ☆
10,855 - expr-lang/expr — Expression evaluation for Go ☆
7,706 - yuin/gopher-lua — Lua VM and compiler in Go ☆
6,859 - dop251/goja — ECMAScript engine in pure Go ☆
6,760 - d5/tengo — Fast script language for Go ☆
3,779 - Shopify/go-lua — Lua VM in Go ☆
3,419 - google/cel-go — Common Expression Language for Go ☆
2,882 - google/starlark-go — Starlark config language in Go ☆
2,643 - metacall/core — Polyglot programming runtime ☆
1,769 - wa-lang/wa — The Wa Programming Language ☆
1,755 - mattn/anko — Scriptable interpreter in Go ☆
1,558 - PaesslerAG/gval — Expression evaluation in Go ☆
810 - ichiban/prolog — Prolog scripting engine for Go ☆
707 - aarzilli/golua — Lua C API bindings for Go ☆
690 - 1set/starlet — Starlark wrapper with batteries ☆
40
- oapi-codegen/oapi-codegen — Generate Go code from OpenAPI 3 specs ☆
8,119 - dave/jennifer — Code generator for Go ☆
3,602 - hexdigest/gowrap — Generate interface decorators ☆
1,312 - awalterschulze/goderive — Generate mundane Go functions ☆
1,265 - abice/go-enum — Enum generator for Go ☆
923 - jmattheis/goverter — Generate type-safe converters ☆
818 - rjeczalik/interfaces — Code generation tools for Go ☆
432 - switchupcb/copygen — Copy values between types ☆
400 - reedom/convergen — Type-to-type copy code generator ☆
48
- go-acme/lego — Let's Encrypt/ACME client and library written in Go ☆
9,299 - caddyserver/certmagic — Automatic HTTPS certificate management ☆
5,448 - tg123/go-htpasswd — Apache htpasswd Parser for Go. ☆
46 - adrianosela/sslmgr — SSL certificate abstraction ☆
31
- FiloSottile/age — Simple encryption tool ☆
21,502 - authzed/spicedb — Zanzibar-inspired permissions DB ☆
6,466 - awnumar/memguard — Software sandbox for storage of sensitive information in memory. ☆
2,717 - cossacklabs/themis — Cryptographic framework for data protection ☆
1,953 - dromara/dongle — A simple, semantic and developer-friendly crypto package for golang ☆
1,100 - anatol/booster — Fast and secure initramfs generator ☆
622 - kevinburke/nacl — Pure Go implementation of the NaCL set of API's ☆
552 - ssh-vault/ssh-vault — encrypt/decrypt using ssh keys ☆
496 - number571/go-peer — Secure decentralized networking ☆
317 - lingrino/vaku — Extended Vault API and CLI ☆
159 - anatol/luks.go — Pure Golang library to manage LUKS partitions ☆
95 - zitadel/passwap — Unified password hashing ☆
73 - rsjethani/secret — Prevent your secrets from leaking into logs, std* etc. ☆
32 - andskur/argon2-hashing — Argon2 password hashing ☆
25
- Ullaakut/cameradar — Cameradar hacks its way into RTSP videosurveillance cameras ☆
4,893 - corazawaf/coraza — ModSecurity-compatible WAF in Go ☆
3,313 - mojocn/base64Captcha — captcha of base64 image string ☆
2,353 - unrolled/secure — HTTP middleware for Go that facilitates some quick security wins. ☆
2,334 - mariocandela/beelzebub — AI-powered honeypot framework ☆
1,855 - cossacklabs/acra — Database security proxy ☆
1,457 - securitybunker/databunker — Secure vault for PII/PHI/KYC records ☆
1,392 - hillu/go-yara — Go bindings for YARA ☆
386 - teler-sh/teler-waf — HTTP middleware for WAF ☆
399 - steambap/captcha — Easy captcha library ☆
162
- sigstore/cosign — Code signing and transparency for containers and binaries ☆
5,687 - openziti/ziti — Zero trust networking platform ☆
3,896 - spiffe/spire — The SPIFFE Runtime Environment ☆
2,228 - philips-labs/spiffe-vault — Integrates Spiffe and Vault to have secretless authentication ☆
99
- smallnest/go-web-framework-benchmark — Web framework benchmarks ☆
2,138 - alecthomas/go_serialization_benchmarks — Serialization benchmarks for Go ☆
1,623 - SimonWaldherr/golang-benchmarks — Go(lang) benchmarks - (measure the speed of golang) ☆
142 - feyeleanor/gospeed — Go language construct benchmarks ☆
127 - nikolaydubina/go-ml-benchmarks — Benchmarks of machine learning inference for Go ☆
32
- golangci/golangci-lint — Fast linters runner for Go ☆
18,611 - boyter/scc — Fast code counter and stats ☆
8,084 - mgechev/revive — Fast, extensible Go linter ☆
5,404 - kisielk/errcheck — errcheck checks that you checked errors. ☆
2,474 - go-critic/go-critic — The most opinionated Go source code linter for code audit. ☆
2,035 - daveshanley/vacuum — Fast OpenAPI linter ☆
1,016 - presmihaylov/todocheck — Analyser for TODO comments ☆
435 - mdempsky/unconvert — Remove unnecessary type conversions ☆
388 - tomarrell/wrapcheck — Check errors are wrapped ☆
359 - mibk/dupl — Code clone detection tool ☆
366 - shurcooL/gostatus — Show status of Go repositories ☆
245 - Antonboom/testifylint — Linter for testify usage ☆
163 - Crocmagnon/fatcontext — Detect nested contexts in loops ☆
71 - antham/ghokin — Parallelized Gherkin formatter ☆
52 - asticode/go-astitodo — Parse TODOs in your GO code ☆
66 - sashamelentyev/usestdlibvars — Linter for stdlib variables usage ☆
47 - borovikovd/gomsort — Go msort - linter that sorts methods ☆
26
- vektra/mockery — Mock code autogenerator for Go ☆
7,010 - DATA-DOG/go-sqlmock — SQL mock driver for testing ☆
6,527 - brianvoe/gofakeit — Random fake data generator written in go ☆
5,311 - uber-go/mock — GoMock is a mocking framework for the Go programming language. ☆
3,277 - SpectoLabs/hoverfly — API simulation and virtualization ☆
2,466 - matryer/moq — Interface mocking via go generate ☆
2,184 - jarcoal/httpmock — HTTP mocking for Go ☆
2,076 - maxbrunsfeld/counterfeiter — Generate type-safe test doubles ☆
1,122 - gojuno/minimock — Powerful mock generator ☆
747 - DATA-DOG/go-txdb — Transaction-isolated SQL driver ☆
748 - pashagolub/pgxmock — pgx mock driver for testing ☆
564 - xhd2015/xgo — All-in-one Go testing library ☆
431 - seborama/govcr — Record and replay HTTP interactions ☆
196 - mocktools/go-smtp-mock — SMTP mock server for testing ☆
160 - elgohr/go-localstack — Go wrapper for LocalStack ☆
85
- jaegertracing/jaeger — Distributed tracing platform ☆
22,519 - pixie-io/pixie — Kubernetes-native observability ☆
6,364 - arl/statsviz — Visualize Go runtime metrics ☆
3,624 - nikolaydubina/go-instrument — Add trace spans to Go functions ☆
289 - joetifa2003/mm-go — Manual memory management for Go ☆
193
- chromedp/chromedp — Chrome DevTools Protocol driver ☆
12,771 - go-rod/rod — Chrome DevTools driver for scraping ☆
6,749 - sensepost/gowitness — Web screenshot utility with Chrome ☆
4,182 - playwright-community/playwright-go — Browser automation for Chromium, Firefox, WebKit ☆
3,222 - mafredri/cdp — Chrome DevTools Protocol bindings ☆
784
- stretchr/testify — Assertions and mocks for testing ☆
25,871 - keploy/keploy — API testing with auto mocks ☆
16,161 - Shopify/toxiproxy — TCP proxy for chaos testing ☆
11,870 - testcontainers/testcontainers-go — Docker containers for integration tests ☆
4,708 - google/go-cmp — Package for comparing Go values in tests ☆
4,601 - gavv/httpexpect — End-to-end HTTP and REST API testing for Go. ☆
2,715 - cucumber/godog — Cucumber for golang ☆
2,594 - orlangure/gnomock — Test with ephemeral Docker containers ☆
1,481 - dnaeon/go-vcr — Record and replay HTTP for tests ☆
1,361 - go-testfixtures/testfixtures — Rails-like test fixtures for Go ☆
1,220 - fergusstrange/embedded-postgres — Embedded PostgreSQL for testing ☆
1,144 - chapar-rest/chapar — API testing for HTTP and gRPC ☆
693 - gotestyourself/gotest.tools — Testing utilities for Go ☆
577 - maxatome/go-testdeep — Flexible deep comparison in tests ☆
463 - appleboy/gofight — Testing API Handler written in Golang. ☆
445 - viant/endly — End to end functional test and automation framework ☆
266 - ysmood/got — An enjoyable golang test framework. ☆
269 - kinbiko/jsonassert — JSON assertion library for tests ☆
140 - adamluzsi/testcase — Opinionated testing framework ☆
127 - earthboundkid/be — The Go test helper for minimalists ☆
131 - corbym/gocrest — GoCrest - Hamcrest-like matchers for Go ☆
106 - hedhyw/gherkingen — Behaviour Driven Development tests generator for Golang ☆
94 - madflojo/testcerts — Generate test certificates on the fly ☆
84 - viant/dsunit — Datastore Testibility ☆
45 - go-restit/restit — A Go library help testing your RESTful API application ☆
55 - rekby/fixenv — Pytest-inspired fixture caching for Go tests ☆
33 - abecodes/dft — Docker wrapper for testing ☆
19
- dvyukov/go-fuzz — Randomized testing for Go ☆
4,845 - pingcap/failpoint — Failpoint implementation for Go ☆
873
- go-playground/validator — Struct and field validation for Go ☆
19,759 - Oudwins/zog — Zod-inspired schema validation ☆
1,148 - gookit/validate — Struct and data validation ☆
1,125 - twharmon/govalid — Struct validation using tags ☆
114 - faceair/jio — JSON schema validator like Joi ☆
124 - osamingo/checkdigit — Check digit algorithms ☆
114 - marrow16/valix — Request validation package ☆
31 - tiendc/go-validator — Intuitive validation library ☆
32
- dustin/go-humanize — Human-friendly unit formatting ☆
4,802 - neilotoole/sq — SQL data wrangler ☆
2,447 - bojanz/address — Address handling for Go ☆
82
- BurntSushi/toml — TOML parser with reflection ☆
4,906 - yuin/goldmark — Markdown parser for Go ☆
4,624 - JohannesKaufmann/html-to-markdown — Convert HTML to Markdown ☆
3,454 - pelletier/go-toml — TOML library for Go ☆
1,905 - antchfx/htmlquery — XPath for HTML queries ☆
781 - clbanning/mxj — XML to/from map conversion ☆
633 - mmalcek/bafi — Universal format converter ☆
112
- microcosm-cc/bluemonday — Fast HTML sanitizer for Go ☆
3,632 - gosimple/slug — URL-friendly slugify ☆
1,321 - pemistahl/lingua-go — Natural language detection ☆
1,320 - arunsupe/semantic-grep — Grep for similar words ☆
1,213 - mattn/go-runewidth — Rune width for terminals ☆
680 - hedhyw/rex — Flexible regex constructor ☆
210 - IGLOU-EU/go-wildcard — Fast wildcard matching ☆
100 - JoshuaDoes/gofuckyourself — Swear filter for Go ☆
68 - alexsergivan/transliterator — Text transliterator ☆
46
- nlpodyssey/spago — ML and NLP library for Go ☆
1,850 - ikawaha/kagome — Japanese morphological analyzer ☆
944 - afjoseph/RAKE.Go — Rapid Keyword Extraction in Go ☆
123 - jonreiter/govader — VADER sentiment analysis ☆
53
- mvdan/sh — Shell parser and formatter ☆
8,489 - mmcdole/gofeed — Parse RSS, Atom, JSON feeds ☆
2,814 - google/go-querystring — Encode structs to URL query strings ☆
2,133 - olebedev/when — Natural language date parser ☆
1,459 - adrianmo/go-nmea — NMEA sentence parser ☆
257 - yassinebenaid/godump — Dump any Go variable ☆
224 - editorconfig/editorconfig-core-go — EditorConfig core in Go ☆
151 - bzick/tokenizer — Tokenizer/lexer for Go ☆
139 - emersion/go-vcard — vCard parser and formatter ☆
124 - polera/gonameparts — Takes a full name and splits it into individual name parts ☆
43
- gocolly/colly — Web scraping framework for Go ☆
25,132 - PuerkitoBio/goquery — jQuery-like HTML manipulation ☆
14,918 - mvdan/xurls — Extract URLs from text ☆
1,250 - s0rg/crawley — The unix-way web crawler ☆
332 - zoomio/tagify — Extract tags from HTML/Markdown/text ☆
39
- blevesearch/bleve — Text/numeric/geo/vector indexing library ☆
10,977 - derekparker/trie — Trie for extremely fast prefix search ☆
787 - agnivade/levenshtein — Go implementation to calculate Levenshtein Distance. ☆
456 - plar/go-adaptive-radix-tree — Adaptive Radix Trees implemented in Go ☆
411 - viant/ptrie — A prefix tree implementation in go ☆
45
- go-ego/gse — Multilingual text segmentation ☆
2,784 - pebbe/textcat — N-gram text categorization ☆
73
- nicksnyder/go-i18n — Translate Go programs ☆
3,478 - leonelquinteros/gotext — GNU gettext for Go ☆
493 - vorlif/spreak — Gettext-based translation library ☆
93 - invopop/ctxi18n — Context-based i18n for Go ☆
92 - mehanizm/iuliia-go — Cyrillic to Latin transliteration ☆
56 - youthlin/t — Translation util using gettext ☆
21
- googleapis/google-cloud-go — Google Cloud Client Libraries for Go. ☆
4,423 - googleapis/google-api-go-client — Auto-generated Google APIs for Go. ☆
4,402 - aws/aws-sdk-go-v2 — AWS SDK for the Go programming language. ☆
3,481 - minio/minio-go — High-performance object storage ☆
2,913 - rhnvrm/simples3 — Simple AWS S3 library using REST ☆
196 - circa10a/go-aws-news — Go app + library to fetch what's new from AWS ☆
18 - chainifynet/aws-encryption-sdk-go — AWS Encryption SDK for Go ☆
22
- codingsince1985/geo-golang — Go library to access geocoding and reverse geocoding APIs ☆
539 - cyruzin/golang-tmdb — Wrapper for TMDb API ☆
156 - gregdel/pushover — Go wrapper for the Pushover API ☆
154 - mvrilo/go-redoc — Embedded OpenAPI documentation ☆
94 - rapito/go-spotify — Go library for the Spotify Web API ☆
50 - zc2638/swag — Generate Swagger from code ☆
50 - staskobzar/goami2 — Simple Asterisk Manager Interface (AMI) library fo golang ☆
21 - rinchsan/device-check-go — iOS DeviceCheck SDK for Go ☆
25 - sostronk/go-steam — Go library for querying Source servers ☆
33 - Icelain/jokeapi — Official golang wrapper for Sv443's jokeapi. ☆
27
- mk-5/fjira — The golang fuzzy-find cli jira interface ☆
261 - adlio/trello — Trello API wrapper for Go ☆
227 - ctreminiom/go-atlassian — Atlassian Cloud API client ☆
197 - koltyakov/gosip — SharePoint SDK for Go ☆
168 - FreeLeh/GoFreeDB — Database on top of Google Sheets ☆
90 - mehanizm/airtable — Simple golang airtable API wrapper ☆
84 - k-capehart/go-salesforce — Salesforce REST API client ☆
53
- goreleaser/goreleaser — Release engineering simplified ☆
15,618 - create-go-app/cli — Create production-ready Go projects ☆
2,746 - miniscruff/changie — Automated changelog tool ☆
863 - jaschaephraim/lrserver — LiveReload server for Go [golang] ☆
129 - karl-cardenas-coding/go-lambda-cleanup — Remove old AWS Lambda versions ☆
96
- junegunn/fzf — Command-line fuzzy finder ☆
78,231 - wagoodman/dive — Explore Docker image layers ☆
53,467 - xo/usql — Universal SQL CLI ☆
9,838 - minio/mc — Unix utilities for object stores ☆
3,403 - joshmedeski/sesh — Terminal session manager ☆
1,779 - itchyny/bed — Binary editor in Go ☆
1,344 - owenthereal/upterm — Instant terminal sharing ☆
1,132 - alajmo/mani — CLI for managing repositories ☆
663 - Unrud/remote-touchpad — Control mouse/keyboard remotely ☆
647 - chenquan/diskusage — Fast disk usage analyzer ☆
302 - reugn/wifiqr — Generate Wi-Fi QR codes ☆
280 - hedhyw/json-log-viewer — Interactive JSON log viewer ☆
216 - hrtsegv/gitcs — Git contributions graph generator ☆
130 - antham/yogo — Check yopmail from CLI ☆
46
- samber/lo — Lodash-style utilities for Go ☆
21,048 - duke-git/lancet — Comprehensive util library ☆
5,273 - darccio/mergo — Merge Go structs and maps ☆
3,084 - goforj/godump — Pretty-printer for Go structs ☆
1,703 - gookit/filter — Data filtering and conversion ☆
151 - tiendc/gofn — High-performance generic functions ☆
51 - xorcare/pointer — Create optional field pointers ☆
47 - shockerli/cvt — Safe type conversion ☆
54
- jmoiron/sqlx — Extensions for database/sql ☆
17,531 - georgysavva/scany — Scan database rows to structs ☆
1,502 - blockloop/scan — Scan SQL rows to structs ☆
610 - wroge/scan — Generic SQL row scanner ☆
68
- dromara/carbon — Developer-friendly time package ☆
5,221 - yaa110/go-persian-calendar — Persian calendar for Go ☆
237 - bykof/gostradamus — Better DateTimes for Go ☆
210 - nathan-osman/go-sunrise — Calculate sunrise and sunset times ☆
173 - rickb777/date — Date handling package ☆
142 - relvacode/iso8601 — Fast ISO8601 date parser ☆
157
- uber-go/fx — DI-based application framework ☆
7,377 - uber-go/dig — Reflection-based DI toolkit ☆
4,445 - goioc/di — Simple DI for Go ☆
377 - go-kod/kod — DI with aspect-oriented support ☆
197 - i-love-flamingo/dingo — DI framework for Go ☆
187 - junioryono/godi — DI with service lifetimes ☆
68 - NVIDIA/gontainer — Simple DI container ☆
64 - matzefriedrich/parsley — Reflection-based DI package ☆
30 - muir/nject — Type-safe DI for Go ☆
30 - logrange/linker — DI and IoC package ☆
35 - componego/componego — Component-oriented framework ☆
28 - firasdarwish/ore — Advanced DI solution ☆
24 - gontainer/gontainer — YAML-based DI container ☆
16
- hashicorp/go-multierror — Represent multiple errors as one ☆
2,552 - cockroachdb/errors — Error library with portability ☆
2,354 - rotisserie/eris — Errors with readable stack traces ☆
1,774 - joomcode/errorx — Comprehensive error handling ☆
1,270 - ztrue/tracerr — Errors with stack trace ☆
1,107 - samber/oops — Structured error handling ☆
860 - Southclaws/fault — Composable error wrapping ☆
308
- schollz/croc — Easily and securely send things from one computer to another ☆
34,279 - qax-os/excelize — Excel XLSX library for Go ☆
20,355 - pdfcpu/pdfcpu — PDF processor in Go ☆
8,494 - spf13/afero — Filesystem abstraction for Go ☆
6,583 - dundee/gdu — Fast disk usage analyzer ☆
5,357 - unidoc/unioffice — Office document library ☆
4,814 - root-gg/plik — Temporary file upload system ☆
1,701 - SpatiumPortae/portal — Command-line file transfer utility ☆
1,748 - SebastiaanKlippert/go-wkhtmltopdf — HTML to PDF wrapper ☆
1,178 - otiai10/copy — Copy directories recursively ☆
769 - ulikunitz/xz — Pure golang package for reading and writing xz-compressed files ☆
551 - no-src/gofs — Cross-platform file sync ☆
526 - mholt/archives — Create and extract archives ☆
379 - viant/afs — Abstract file storage ☆
374 - C2FO/vfs — Virtual file system for Go ☆
357 - gen2brain/go-unarr — Decompression library bindings ☆
308 - barasher/go-exiftool — Exiftool wrapper for metadata ☆
293 - gomutex/godocx — Go library for reading and writing Microsoft Docx ☆
244 - artonge/go-csv-tag — CSV reading with tags ☆
129 - parsyl/parquet — Parquet file library ☆
127 - charlievieth/fastwalk — Fast directory traversal ☆
121 - adelowo/gulter — Multipart form handling ☆
70 - go-the-way/exl — Excel binding to struct written in Go.(Only supports Go1.18+) ☆
32
- justinas/nosurf — CSRF protection middleware ☆
1,730 - gorilla/csrf — CSRF prevention middleware ☆
1,181 - go-playground/form — URL values to structs ☆
900 - ggicci/httpin — HTTP request to struct binding ☆
384 - sonh/qs — Encode structs to query params ☆
80 - cinar/checker — Input validation with struct tags ☆
48
- samber/mo — Monads and FP for Go ☆
3,297 - BooleanCat/go-functional — Iterator library for Go ☆
527 - seborama/fuego — Functional programming in Go ☆
146 - rjNemo/underscore — Functional helpers for Go ☆
118
- wabarc/wayback — Web archiving tool with IM interface ☆
2,149 - gabriel-vasile/mimetype — MIME type detection by magic numbers ☆
1,955 - qmuntal/stateless — Go library for creating finite state machines ☆
1,259 - jonboulle/clockwork — a fake clock for golang ☆
723 - Boeing/config-file-validator — Cross Platform tool to validate configuration files ☆
498 - biter777/countries — ISO country codes library ☆
501 - ungerik/go-dry — DRY (don't repeat yourself) package for Go ☆
488 - subosito/gotenv — Load environment variables from
.envorio.Readerin Go. ☆306 - viant/toolbox — Toolbox - go utility library ☆
228 - ikeikeikeike/go-sitemap-generator — Generate XML sitemaps ☆
229 - maja42/goval — Expression evaluation in golang ☆
174 - commander-cli/cmd — A simple package to execute shell commands on linux, windows and osx ☆
160 - jfcg/sorty — Fast Concurrent / Parallel Sorting in Go ☆
144 - tiendc/go-deepcopy — Fast deep-copy library for Go ☆
126 - syntaqx/cookie — Cookies, but with structs, for happiness. ☆
112 - pioz/countries — All you need when you are working with countries in Go. ☆
95 - arthurkushman/pgo — Go library for PHP community with convenient functions ☆
88 - wzshiming/gotype — Golang source code parsing, usage like reflect package ☆
64 - rkoesters/xdg — FreeDesktop.org (xdg) Specs implemented in Go ☆
48 - icza/backscanner — Scan file lines backward ☆
69 - kazhuravlev/just — Collection of useful functions. Complete simple tasks faster! ☆
35 - mikekonan/go-types — OpenAPI3 types for Go ☆
23 - ik5/gostrutils — Collections of string utils I have created over the years ☆
47 - osamingo/gosh — Provide Go Statistics Handler, Struct, Measure Method ☆
36 - lrita/numa — NUMA utility library for Go ☆
38 - floatdrop/debounce — A zero-allocation debouncer ☆
34 - nikolaydubina/watchhttp — Expose command output via HTTP ☆
34 - skovtunenko/graterm — Graceful termination primitives ☆
30
- sirupsen/logrus — Structured, pluggable logging for Go. ☆
25,705 - uber-go/zap — Fast structured logging ☆
24,349 - rs/zerolog — Zero allocation JSON logger ☆
12,238 - davecgh/go-spew — Deep pretty printer for debugging ☆
6,374 - golang/glog — Leveled execution logs ☆
3,615 - k0kubun/pp — Colored pretty printer for Go ☆
2,034 - lmittmann/tint — Colorized slog handler ☆
1,246 - Lifailon/lazyjournal — TUI for journald, Docker, K8s logs ☆
1,158 - getsentry/sentry-go — Official Sentry SDK for Go ☆
1,047 - phuslu/log — Fastest structured logging ☆
834 - samber/slog-multi — Workflow design for slog handlers ☆
610 - gookit/slog — Configurable logging library ☆
536 - henvic/httpretty — Pretty-print HTTP requests ☆
413 - simukti/sqldb-logger — SQL database logger ☆
382 - hashicorp/logutils — Logging utilities for Go ☆
371 - samber/slog-formatter — Slog attribute formatting ☆
212 - DeRuina/timberjack — Log rolling library ☆
120 - rs/xlog — Context-aware HTTP logger ☆
141 - yuseferi/zax — Zap logger with context ☆
34 - clok/kemba — Tiny debug logging tool ☆
17
- cristianoliveira/ergo — Manage apps on different ports ☆
649 - htcat/htcat — Parallel HTTP download ☆
561 - ferama/rospo — Persistent SSH tunnels ☆
358
- golang-standards/project-layout — Standard Go project layout ☆
55,464 - Melkeydev/go-blueprint — Spin up Go projects with popular frameworks ☆
8,687 - ardanlabs/service — K8s service starter kit ☆
3,943 - Shpota/goxygen — Generate full-stack web projects ☆
3,604 - mikestefanello/pagoda — Full-stack web development starter kit ☆
2,911 - go-nunu/nunu — CLI for building Go apps ☆
2,549 - sagikazarmark/modern-go-application — Modern Go app example ☆
1,937 - naughtygopher/goapp — Opinionated web app structure ☆
1,052 - allaboutapps/go-starter — Production-ready RESTful API template ☆
598 - golang-templates/seed — Go app GitHub template ☆
555 - raeperd/kickstart.go — Minimal HTTP server template ☆
104 - wangyoucao577/go-project-layout — Go project structure guide ☆
26
- avast/retry-go — Simple retry mechanism ☆
2,888 - eapache/go-resiliency — Resiliency patterns for golang ☆
2,339 - failsafe-go/failsafe-go — Fault tolerance patterns ☆
2,154 - rubyist/circuitbreaker — Circuit breakers in Go ☆
1,164 - cep21/circuit — Hystrix-like circuit breaker ☆
797 - mennanov/limiters — Distributed rate limiters ☆
621 - kamilsk/retry — Advanced retry mechanism ☆
346 - webriots/rate — High-performance rate limiter ☆
166 - reugn/equalizer — Performant rate limiters ☆
90
- huandu/xstrings — String functions from other langs ☆
1,418 - abhimanyu003/sttr — CLI string operations ☆
1,293 - gobeam/stringy — String case conversions ☆
251 - ozgio/strutil — String utilities for Go ☆
207
- cilium/ebpf — eBPF library for Go ☆
7,552 - maruel/panicparse — Crash your app in style ☆
3,715 - immortal/immortal — Cross-platform supervisor ☆
833 - derekparker/delve — Delve is a debugger for the Go programming language. ☆
661 - gotranspile/cxgo — Transpile C to Go ☆
388
- google/uuid — UUID generation and parsing ☆
5,995 - oklog/ulid — ULID implementation ☆
4,992 - gofrs/uuid — UUID library for Go ☆
1,766 - osamingo/indigo — Sonyflake-based ID generator ☆
112 - sdrapkin/guid — Fast cryptographically safe Guid generator for Go ☆
73 - twharmon/gouid — Fast, dependable universally unique ids ☆
26
- google/go-github — Go library for accessing the GitHub v3 API ☆
11,147 - shurcooL/githubv4 — GitHub GraphQL API v4 client ☆
1,185 - go-playground/webhooks — Webhook receiver for GitHub, Bitbucket, GitLab, Gogs ☆
1,030 - andygrunwald/go-trending — Access GitHub trending repositories ☆
146 - andygrunwald/go-gerrit — Go client/library for Gerrit Code Review ☆
104
- anchore/syft — SBOM generator for containers ☆
8,431 - nao1215/gup — gup - Update binaries installed by "go install" with goroutines. ☆
544 - marwanhawari/stew — An independent package manager for compiled binaries. ☆
332 - chaindead/modup — TUI for Go dependency updates ☆
63
- go-git/go-git — Pure Go Git implementation ☆
7,226 - antham/chyle — Changelog generator from Git ☆
159 - gabyx/Githooks — Per-repo shared Git hooks ☆
120 - antham/gommit — Enforce git message commit consistency ☆
115 - jfrog/froggit-go — Universal VCS client library ☆
52 - kazhuravlev/git-tools — Useful set of tools which helps to manage git tags ☆
29
- zeromicro/go-zero — Microservices framework with CLI tools ☆
32,734 - go-kit/kit — A standard library for microservices. ☆
27,582 - go-kratos/kratos — Your ultimate Go microservices framework for the cloud-native era. ☆
25,499 - micro/go-micro — A Go microservices framework ☆
22,722 - smallnest/rpcx — Feature-rich RPC framework ☆
8,274 - cloudwego/kitex — High-performance Go RPC framework ☆
7,869 - go-dev-frame/sponge — Code generation framework for Go ☆
2,800 - go-eagle/eagle — A Go framework for the API or Microservice ☆
2,418 - unionj-cloud/go-doudou — OpenAPI 3 and gRPC microservices framework ☆
1,198 - trpc-group/trpc-go — A pluggable, high-performance RPC framework written in golang ☆
1,119 - gmsec/micro — A Go distributed systems development framework ☆
25
- urfave/negroni — Idiomatic HTTP Middleware for Golang ☆
7,542 - tdewolff/minify — Go minifiers for web formats ☆
4,070 - justinas/alice — Painless middleware chaining for Go ☆
3,354 - rs/cors — Go net/http configurable handler to handle CORS requests ☆
2,864 - didip/tollbooth — Simple middleware to rate-limit HTTP requests. ☆
2,859 - unrolled/render — Render JSON, XML, HTML, binary ☆
1,992 - lingrino/go-fault — go fault injection library ☆
541 - jub0bs/cors — perhaps the best CORS middleware library for Go ☆
179 - rookie-ninja/rk-gin — Start gin microservice from YAML, plugin of rk-boot ☆
51 - faabiosr/echo-middleware — Middlewares for Echo framework ☆
16
- gorilla/mux — Powerful HTTP router ☆
21,889 - go-chi/chi — Lightweight idiomatic HTTP router ☆
21,750 - gowww/router — A lightning fast HTTP router ☆
185 - gernest/alien — A lightweight and fast http router from outer space ☆
134 - ngamux/ngamux — Simple HTTP router for Go ☆
70 - bmf-san/goblin — A golang http router based on trie tree. ☆
81 - muir/nchi — golang http router with elegance, speed, and flexibility ☆
18
- a-h/templ — A language for writing HTML user interfaces in Go. ☆
10,119 - valyala/quicktemplate — Fast template engine for Go ☆
3,298 - johnfercher/maroto — Create PDFs with Bootstrap grid ☆
2,646 - CloudyKit/jet — Jet template engine ☆
1,383 - osteele/liquid — A Liquid template engine in Go ☆
342 - go-sprout/sprout — Template functions for Go ☆
210 - robfig/soy — Go implementation for Soy templates (Google Closure templates) ☆
177 - goradd/got — Template engine with Go code output ☆
38
- gin-gonic/gin — High-performance HTTP framework ☆
88,147 - gofiber/fiber — Express inspired web framework written in Go ☆
39,327 - beego/beego — High-performance web framework ☆
32,431 - labstack/echo — High performance, minimalist Go web framework ☆
32,209 - gofr-dev/gofr — Microservice framework for Go ☆
16,119 - gogf/gf — Powerful full-stack framework ☆
13,057 - cloudwego/hertz — High-performance HTTP framework ☆
7,107 - goadesign/goa — Design-first API framework ☆
6,057 - apache/dubbo-go — Go Implementation For Apache Dubbo . ☆
4,889 - goravel/goravel — The full-featured Golang Development Framework skeleton ☆
4,440 - danielgtaylor/huma — Huma REST/HTTP API Framework for Golang with OpenAPI 3.1 ☆
3,850 - documize/community — Modern Confluence alternative ☆
2,370 - go-sonic/sonic — Blogging platform in Go ☆
2,124 - go-goyave/goyave — The enterprise REST API framework ☆
1,767 - go-fuego/fuego — Web framework with OpenAPI 3 ☆
1,673 - templui/templui — UI components for Templ ☆
1,363 - savsgio/atreugo — Micro web framework on fasthttp ☆
1,300 - ankorstore/yokai — Modular framework for Go apps ☆
822 - indeedeng/iwf — Workflow-as-code orchestration ☆
631 - i-love-flamingo/flamingo-commerce — Flexible Go web framework ☆
588 - i-love-flamingo/flamingo — Flexible Go web framework ☆
556 - rookie-ninja/rk-boot — Enterprise microservice framework ☆
576 - fastschema/fastschema — All-in-One Backend as a Service with Headless CMS Power ☆
537 - uadmin/uadmin — The web framework for Golang ☆
355 - xxjwxc/ginrpc — gin auto binding, grpc and annotated route ☆
302 - hidevopsio/hiboot — High-performance CLI and web apps ☆
180 - beatlabs/patron — Cloud-native microservice framework ☆
126 - gone-io/gone — Lightweight DI framework ☆
131 - claygod/microservice — Simple microservice framework ☆
122 - yaitoo/xun — Web framework on html/template ☆
91 - gookit/rux — Simple and fast web framework ☆
99 - napsy/go-css — A very simple CSS parser, written in Go ☆
91 - go-spring/spring-core — Spring-inspired framework for Go ☆
76 - abemedia/go-don — API framework written in Golang. ☆
58 - JiveGroup/gFly — Laravel inspired web framework written in Go ☆
48 - clubpay/ronykit — API Framework supporting REST and RPC. ☆
36 - SaiNageswarS/go-api-boot — gRPC + HTTP/2 production framework ☆
35
- tinygo-org/tinygo — Go compiler for microcontrollers ☆
17,198 - agnivade/wasmbrowsertest — Run WASM tests inside your browser ☆
206 - extism/go-sdk — Extism Go SDK - easily run WebAssembly modules in your Go applications ☆
168
- go-co-op/gocron — Easy and fluent Go cron scheduling ☆
6,935 - hatchet-dev/hatchet — Run Background Tasks at Scale ☆
6,664 - reugn/go-quartz — Minimalist and zero-dependency scheduling library for Go ☆
2,008 - adhocore/gronx — Lightweight cron expression parser ☆
497 - fieldryand/goflow — Simple but powerful DAG scheduler and dashboard ☆
472 - madflojo/tasks — In-process task scheduler ☆
323 - bart6114/cheek — cheek: a pico-sized declarative job scheduler ☆
194 - onatm/clockwerk — Job Scheduling Library ☆
182 - deepaksinghvi/cdule — Golang job scheduler ☆
60 - pardnchiu/go-scheduler — Scheduler with standard cron and task dependencies ☆
32 - romshark/sched — A job scheduler for Go with the ability to fast-forward time. ☆
28
- redpanda-data/connect — Fancy stream processing made operationally mundane ☆
8,597 - dagu-org/dagu — Workflow engine with Web UI ☆
3,113 - jf-tech/omniparser — ETL streaming parser for Go ☆
1,079 - noneback/go-taskflow — Task-parallel programming library ☆
617 - cadence-workflow/cadence-go-client — Cadence workflow client for Go ☆
373 - luno/workflow — Type-safe workflow orchestration ☆
221 - rhosocial/go-dag — DAG-based workflow framework ☆
35
The most starred projects in this list, sorted by GitHub stars.
- ollama/ollama — Run LLMs locally ☆
163,888 - kubernetes/kubernetes — Production-Grade Container Scheduling and Management ☆
120,856 - gin-gonic/gin — High-performance HTTP framework ☆
88,147 - junegunn/fzf — Command-line fuzzy finder ☆
78,231 - moby/moby — Container ecosystem components ☆
71,463 - caddyserver/caddy — Multi-platform web server with HTTPS ☆
70,494 - prometheus/prometheus — The Prometheus monitoring system and time series database. ☆
62,985 - traefik/traefik — The Cloud Native Application Proxy ☆
61,981 - pocketbase/pocketbase — Open Source realtime backend in 1 file ☆
56,508 - golang-standards/project-layout — Standard Go project layout ☆
55,464 - go-gitea/gitea — Self-hosted Git service ☆
54,010 - wagoodman/dive — Explore Docker image layers ☆
53,467 - etcd-io/etcd — Distributed key-value store ☆
51,568 - ethereum/go-ethereum — Go implementation of the Ethereum protocol ☆
50,884 - spf13/cobra — A Commander for modern Go CLI interactions ☆
43,330 - mudler/LocalAI — Local OpenAI alternative ☆
43,196 - milvus-io/milvus — Cloud-native vector database ☆
43,069 - charmbracelet/bubbletea — A powerful little TUI framework ☆
40,094 - pingcap/tidb — Cloud-native distributed SQL DB ☆
39,841 - go-gorm/gorm — The fantastic ORM library for Golang, aims to be developer friendly ☆
39,609 - gofiber/fiber — Express inspired web framework written in Go ☆
39,327 - schollz/croc — Easily and securely send things from one computer to another ☆
34,279 - harness/harness — End-to-end developer platform ☆
33,841 - zeromicro/go-zero — Microservices framework with CLI tools ☆
32,734 - restic/restic — Fast, secure backup program ☆
32,488 - beego/beego — High-performance web framework ☆
32,431 - k3s-io/k3s — Lightweight Kubernetes ☆
32,340 - labstack/echo — High performance, minimalist Go web framework ☆
32,209 - cockroachdb/cockroach — Cloud native distributed SQL database ☆
31,959 - kubernetes/minikube — Run Kubernetes locally ☆
31,541 - influxdata/influxdb — Scalable datastore for metrics, events, and real-time analytics ☆
31,312 - seaweedfs/seaweedfs — Fast distributed storage for blobs ☆
30,700 - spf13/viper — Go configuration with fangs ☆
30,113 - grafana/k6 — A modern load testing tool, using Go and JavaScript ☆
30,027 - fyne-io/fyne — Cross platform GUI toolkit in Go inspired by Material Design ☆
27,975 - go-kit/kit — A standard library for microservices. ☆
27,582 - stretchr/testify — Assertions and mocks for testing ☆
25,871 - sirupsen/logrus — Structured, pluggable logging for Go. ☆
25,705 - go-kratos/kratos — Your ultimate Go microservices framework for the cloud-native era. ☆
25,499 - gocolly/colly — Web scraping framework for Go ☆
25,132 - tsenart/vegeta — HTTP load testing tool and library. It's over 9000! ☆
24,934 - uber-go/zap — Fast structured logging ☆
24,349 - urfave/cli — Fast CLI framework for Go ☆
23,907 - valyala/fasthttp — Fast HTTP package for Go ☆
23,281 - air-verse/air — Live reload for Go apps ☆
23,078 - grpc/grpc-go — The Go language implementation of gRPC. HTTP/2 based RPC ☆
22,814 - micro/go-micro — A Go microservices framework ☆
22,722 - jaegertracing/jaeger — Distributed tracing platform ☆
22,519 - redis/go-redis — Redis Go client ☆
21,949 - gorilla/mux — Powerful HTTP router ☆
21,889 - go-chi/chi — Lightweight idiomatic HTTP router ☆
21,750 - dgraph-io/dgraph — high-performance graph database for real-time use cases ☆
21,610 - FiloSottile/age — Simple encryption tool ☆
21,502 - samber/lo — Lodash-style utilities for Go ☆
21,048 - vitessio/vitess — Database clustering for MySQL ☆
20,813 - dolthub/dolt — Dolt – Git for Data ☆
20,372 - qax-os/excelize — Excel XLSX library for Go ☆
20,355 - antonmedv/fx — Terminal JSON viewer & processor ☆
20,308 - casbin/casbin — Authorization library for Go ☆
19,893 - go-playground/validator — Struct and field validation for Go ☆
19,759 - nats-io/nats-server — High-performance NATS message server ☆
19,257 - golangci/golangci-lint — Fast linters runner for Go ☆
18,611 - golang-migrate/migrate — Database migrations. CLI and Golang library. ☆
18,170 - jmoiron/sqlx — Extensions for database/sql ☆
17,531 - rqlite/rqlite — Lightweight distributed SQLite ☆
17,330 - tinygo-org/tinygo — Go compiler for microcontrollers ☆
17,198 - sqlc-dev/sqlc — Generate type-safe code from SQL ☆
17,060 - ent/ent — An entity framework for Go ☆
16,942 - ipfs/kubo — An IPFS implementation in Go ☆
16,935 - VictoriaMetrics/VictoriaMetrics — Fast time series database and monitoring ☆
16,413 - fatih/vim-go — Go development plugin for Vim ☆
16,236 - keploy/keploy — API testing with auto mocks ☆
16,161 - gofr-dev/gofr — Microservice framework for Go ☆
16,119 - pion/webrtc — Pure Go implementation of the WebRTC API ☆
16,098 - goreleaser/goreleaser — Release engineering simplified ☆
15,618 - hashicorp/packer — Build machine images from config ☆
15,616 - dgraph-io/badger — Fast key-value DB in Go. ☆
15,500 - tidwall/gjson — Fast JSON value extraction ☆
15,453 - go-sql-driver/mysql — MySQL driver for database/sql ☆
15,383 - kubernetes-sigs/kind — Kubernetes IN Docker - local clusters for testing Kubernetes ☆
15,053 - go-task/task — A fast, cross-platform build tool inspired by Make, designed for modern workflows. ☆
14,990 - PuerkitoBio/goquery — jQuery-like HTML manipulation ☆
14,918 - panjf2000/ants — ants is the most powerful and reliable pooling solution for Go. ☆
14,342 - webview/webview — Tiny webview library for Go ☆
13,925 - bytebase/bytebase — Database DevSecOps platform ☆
13,768 - gizak/termui — Golang terminal dashboard ☆
13,523 - jackc/pgx — PostgreSQL driver and toolkit for Go ☆
13,480 - golang/groupcache — Distributed cache library ☆
13,340 - cloudflare/cloudflared — Cloudflare Tunnel client ☆
13,302 - juicedata/juicefs — Distributed POSIX filesystem ☆
13,285 - gopherjs/gopherjs — A compiler from Go to JavaScript for running Go code in a browser ☆
13,130 - gogf/gf — Powerful full-stack framework ☆
13,057 - hajimehoshi/ebiten — A dead simple 2D game engine for Go ☆
12,991 - hibiken/asynq — Simple, reliable, and efficient distributed task queue in Go ☆
12,971 - chromedp/chromedp — Chrome DevTools Protocol driver ☆
12,771 - IBM/sarama — Sarama is a Go library for Apache Kafka. ☆
12,433 - rs/zerolog — Zero allocation JSON logger ☆
12,238 - Shopify/toxiproxy — TCP proxy for chaos testing ☆
11,870 - kubeshark/kubeshark — API traffic analyzer for Kubernetes ☆
11,805 - drakkan/sftpgo — Full-featured SFTP/FTP/HTTP server ☆
11,727
- MariaLetta/free-gophers-pack — This pack of 100+ gopher pictures and elements
- keygx/Go-gopher-Vector — Go gopher Vector Data (.ai, .svg)
- ashleymcnamara/gophers — Gopher Artwork by Ashley McNamara
- sillecelik/go-gopher — The Go Gopher Amigurumi Pattern
- GolangUA/gopher-logos — adorable gopher logos
- egonelbre/gophers — gophers artwork
- scraly/gophers — Gopher artwork (Golang mascot)
Please see CONTRIBUTING for details.
Found something wrong? Open an issue or submit a pull request — contributions are welcome!
The MIT License (MIT). Please see License File for more information.