Skip to content

Structured collection of Go frameworks, libraries, tools, and resources. Automatically maintained and up-to-date with metadata, filtering, and comprehensive categorization.

License

Notifications You must be signed in to change notification settings

abordage/awesome-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

380 Commits
 
 
 
 
 
 
 
 
 
 

Awesome Go

Awesome Last update Repositories Total Stars License

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

AI APIs

Artificial Intelligence

Machine Learning

Audio & Video

Audio

Images

Video

Auth

Authentication

Authorization

Bots & Chat

Bot Frameworks

Chat APIs

CLI & Terminal

Advanced Console UIs

Standard CLI

Concurrency

Actor Model

Goroutines

Stream Processing

Configuration

Data Formats

JSON

Serialization

XML

Data Structures

Bit-packing and Compression

Bloom and Cuckoo Filters

Maps

Miscellaneous

Queues

Databases

Caches

Database Schema Migration

Database Tools

Databases Implemented in Go

Distributed Storage

Interfaces to Multiple Backends

NoSQL Database Drivers

ORM

Query Language

Relational Database Drivers

SQL Query Builders

Search and Analytic Databases

DevOps & Build

Backup

Build Automation

  • 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

CI/CD

Containers

DevOps Utilities

Infrastructure

Kubernetes

Load Testing

  • 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

Email

Finance & Blockchain

Blockchain

Financial

Payment APIs

GUI & Desktop

GUI

Windows

Game Development

Game Engines

OpenGL

  • 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

Geospatial

Go Tooling

Compilers

Editor Plugins

Generate Tools

  • 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 Tools

Hardware & IoT

Hardware

IoT

Networking

Consensus

DNS

Distributed Utilities

HTTP & Proxy

HTTP Clients

Servers

Network Utilities

P2P & Torrent

Protocols

  • 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

RPC

  • 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

SSH & SFTP

TCP/UDP Frameworks

  • 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

VPN & Tunneling

Queues & Pub/Sub

Brokers

Clients & Libraries

Science

Scripting

Embeddable Languages

Code Generators

Security

Certificates

Cryptography

WAF & Protection

Zero Trust

Testing & Quality

Benchmarks

Code Analysis

Mock

Performance

Browser Automation

Testing Frameworks

Testing Utilities

Validation

Text & NLP

Formatters

Markup Languages

Miscellaneous

Morphological Analyzers

Parsers/Encoders/Decoders

Scrapers

Text Analysis

Tokenizers

Translation

Third-party APIs

Cloud Provider APIs

Other APIs

Productivity APIs

Utilities

Build & Release

CLI Tools

Data Conversion

Database Extensions

Date and Time

Dependency Injection

Error Handling

File Handling

Forms

Functional

General

Logging

Networking Utils

Project Layout

Resilience & Retry

Strings

System & Process

UUID

Version Control & Packages

Git APIs

Package Management

  • 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

Version Control

Web Development

Microservices

Middlewares

Routers

  • 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

Template Engines

Web Frameworks

WebAssembly

Workflow & Scheduling

Job Scheduler

Workflow Frameworks


🏆 Top 100 by Stars

The most starred projects in this list, sorted by GitHub stars.

  1. ollama/ollama — Run LLMs locally ☆163,888
  2. kubernetes/kubernetes — Production-Grade Container Scheduling and Management ☆120,856
  3. gin-gonic/gin — High-performance HTTP framework ☆88,147
  4. junegunn/fzf — Command-line fuzzy finder ☆78,231
  5. moby/moby — Container ecosystem components ☆71,463
  6. caddyserver/caddy — Multi-platform web server with HTTPS ☆70,494
  7. prometheus/prometheus — The Prometheus monitoring system and time series database. ☆62,985
  8. traefik/traefik — The Cloud Native Application Proxy ☆61,981
  9. pocketbase/pocketbase — Open Source realtime backend in 1 file ☆56,508
  10. golang-standards/project-layout — Standard Go project layout ☆55,464
  11. go-gitea/gitea — Self-hosted Git service ☆54,010
  12. wagoodman/dive — Explore Docker image layers ☆53,467
  13. etcd-io/etcd — Distributed key-value store ☆51,568
  14. ethereum/go-ethereum — Go implementation of the Ethereum protocol ☆50,884
  15. spf13/cobra — A Commander for modern Go CLI interactions ☆43,330
  16. mudler/LocalAI — Local OpenAI alternative ☆43,196
  17. milvus-io/milvus — Cloud-native vector database ☆43,069
  18. charmbracelet/bubbletea — A powerful little TUI framework ☆40,094
  19. pingcap/tidb — Cloud-native distributed SQL DB ☆39,841
  20. go-gorm/gorm — The fantastic ORM library for Golang, aims to be developer friendly ☆39,609
  21. gofiber/fiber — Express inspired web framework written in Go ☆39,327
  22. schollz/croc — Easily and securely send things from one computer to another ☆34,279
  23. harness/harness — End-to-end developer platform ☆33,841
  24. zeromicro/go-zero — Microservices framework with CLI tools ☆32,734
  25. restic/restic — Fast, secure backup program ☆32,488
  26. beego/beego — High-performance web framework ☆32,431
  27. k3s-io/k3s — Lightweight Kubernetes ☆32,340
  28. labstack/echo — High performance, minimalist Go web framework ☆32,209
  29. cockroachdb/cockroach — Cloud native distributed SQL database ☆31,959
  30. kubernetes/minikube — Run Kubernetes locally ☆31,541
  31. influxdata/influxdb — Scalable datastore for metrics, events, and real-time analytics ☆31,312
  32. seaweedfs/seaweedfs — Fast distributed storage for blobs ☆30,700
  33. spf13/viper — Go configuration with fangs ☆30,113
  34. grafana/k6 — A modern load testing tool, using Go and JavaScript ☆30,027
  35. fyne-io/fyne — Cross platform GUI toolkit in Go inspired by Material Design ☆27,975
  36. go-kit/kit — A standard library for microservices. ☆27,582
  37. stretchr/testify — Assertions and mocks for testing ☆25,871
  38. sirupsen/logrus — Structured, pluggable logging for Go. ☆25,705
  39. go-kratos/kratos — Your ultimate Go microservices framework for the cloud-native era. ☆25,499
  40. gocolly/colly — Web scraping framework for Go ☆25,132
  41. tsenart/vegeta — HTTP load testing tool and library. It's over 9000! ☆24,934
  42. uber-go/zap — Fast structured logging ☆24,349
  43. urfave/cli — Fast CLI framework for Go ☆23,907
  44. valyala/fasthttp — Fast HTTP package for Go ☆23,281
  45. air-verse/air — Live reload for Go apps ☆23,078
  46. grpc/grpc-go — The Go language implementation of gRPC. HTTP/2 based RPC ☆22,814
  47. micro/go-micro — A Go microservices framework ☆22,722
  48. jaegertracing/jaeger — Distributed tracing platform ☆22,519
  49. redis/go-redis — Redis Go client ☆21,949
  50. gorilla/mux — Powerful HTTP router ☆21,889
  51. go-chi/chi — Lightweight idiomatic HTTP router ☆21,750
  52. dgraph-io/dgraph — high-performance graph database for real-time use cases ☆21,610
  53. FiloSottile/age — Simple encryption tool ☆21,502
  54. samber/lo — Lodash-style utilities for Go ☆21,048
  55. vitessio/vitess — Database clustering for MySQL ☆20,813
  56. dolthub/dolt — Dolt – Git for Data ☆20,372
  57. qax-os/excelize — Excel XLSX library for Go ☆20,355
  58. antonmedv/fx — Terminal JSON viewer & processor ☆20,308
  59. casbin/casbin — Authorization library for Go ☆19,893
  60. go-playground/validator — Struct and field validation for Go ☆19,759
  61. nats-io/nats-server — High-performance NATS message server ☆19,257
  62. golangci/golangci-lint — Fast linters runner for Go ☆18,611
  63. golang-migrate/migrate — Database migrations. CLI and Golang library. ☆18,170
  64. jmoiron/sqlx — Extensions for database/sql ☆17,531
  65. rqlite/rqlite — Lightweight distributed SQLite ☆17,330
  66. tinygo-org/tinygo — Go compiler for microcontrollers ☆17,198
  67. sqlc-dev/sqlc — Generate type-safe code from SQL ☆17,060
  68. ent/ent — An entity framework for Go ☆16,942
  69. ipfs/kubo — An IPFS implementation in Go ☆16,935
  70. VictoriaMetrics/VictoriaMetrics — Fast time series database and monitoring ☆16,413
  71. fatih/vim-go — Go development plugin for Vim ☆16,236
  72. keploy/keploy — API testing with auto mocks ☆16,161
  73. gofr-dev/gofr — Microservice framework for Go ☆16,119
  74. pion/webrtc — Pure Go implementation of the WebRTC API ☆16,098
  75. goreleaser/goreleaser — Release engineering simplified ☆15,618
  76. hashicorp/packer — Build machine images from config ☆15,616
  77. dgraph-io/badger — Fast key-value DB in Go. ☆15,500
  78. tidwall/gjson — Fast JSON value extraction ☆15,453
  79. go-sql-driver/mysql — MySQL driver for database/sql ☆15,383
  80. kubernetes-sigs/kind — Kubernetes IN Docker - local clusters for testing Kubernetes ☆15,053
  81. go-task/task — A fast, cross-platform build tool inspired by Make, designed for modern workflows. ☆14,990
  82. PuerkitoBio/goquery — jQuery-like HTML manipulation ☆14,918
  83. panjf2000/ants — ants is the most powerful and reliable pooling solution for Go. ☆14,342
  84. webview/webview — Tiny webview library for Go ☆13,925
  85. bytebase/bytebase — Database DevSecOps platform ☆13,768
  86. gizak/termui — Golang terminal dashboard ☆13,523
  87. jackc/pgx — PostgreSQL driver and toolkit for Go ☆13,480
  88. golang/groupcache — Distributed cache library ☆13,340
  89. cloudflare/cloudflared — Cloudflare Tunnel client ☆13,302
  90. juicedata/juicefs — Distributed POSIX filesystem ☆13,285
  91. gopherjs/gopherjs — A compiler from Go to JavaScript for running Go code in a browser ☆13,130
  92. gogf/gf — Powerful full-stack framework ☆13,057
  93. hajimehoshi/ebiten — A dead simple 2D game engine for Go ☆12,991
  94. hibiken/asynq — Simple, reliable, and efficient distributed task queue in Go ☆12,971
  95. chromedp/chromedp — Chrome DevTools Protocol driver ☆12,771
  96. IBM/sarama — Sarama is a Go library for Apache Kafka. ☆12,433
  97. rs/zerolog — Zero allocation JSON logger ☆12,238
  98. Shopify/toxiproxy — TCP proxy for chaos testing ☆11,870
  99. kubeshark/kubeshark — API traffic analyzer for Kubernetes ☆11,805
  100. drakkan/sftpgo — Full-featured SFTP/FTP/HTTP server ☆11,727

Gophers

Contributing

Please see CONTRIBUTING for details.

Feedback

Found something wrong? Open an issue or submit a pull request — contributions are welcome!

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Structured collection of Go frameworks, libraries, tools, and resources. Automatically maintained and up-to-date with metadata, filtering, and comprehensive categorization.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors