Awesome Go

Search

Find Go libraries and tools by name, category, or popularity.

3,042 results

gollback

asynchronous simple function utilities, for managing execution of closures and callbacks

121GoroutinesGoroutines
govalid

Fast, tag-based validation for structs

121ValidationValidation
easycache

A simple way to use in-memory cache in Golang (TTL/FIFO/LRU/LFU)

121DatabaseCaches
vat

VAT number validation & EU VAT rates

120FinancialFinancial
go-fann

Go bindings for Fast Artificial Neural Networks(FANN) library

120Machine LearningMachine Learning
GoSQLX

High-performance SQL parser, formatter, linter, and security scanner with multi-dialect support and WASM playground

120DatabaseDatabase Tools
spec

Lightweight OpenAPI 3.x builder supporting static generation and popular frameworks like chi, echo, gin, fiber, mux and more

120Third-party APIsThird-party APIs
doors

Server-driven framework for building stateful, reactive web applications entirely in Go

120Web FrameworksWeb Frameworks
session

Go session management for web servers (including support for Google App Engine - GAE)

119Authentication and AuthorizationAuthentication and Authorization
onion

Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP

119ConfigurationConfiguration
gocontracts

brings design-by-contract to Go by synchronizing the code with the documentation

119Go Generate ToolsGo Generate Tools
event

Simple I/O event notification library written in Golang

119NetworkingNetworking
goseaweedfs

SeaweedFS client library with almost full features

119UtilitiesUtilities
dbbench

Database benchmarking tool with support for several databases and scripts

118DatabaseDatabase Tools
underscore

Functional programming helpers for Go 1.18 and beyond

118FunctionalFunctional
go-featureprocessing

Fast and convenient feature processing for low latency machine learning in Go.

118Machine LearningLibraries for Machine Learning.
bafi

Universal JSON, BSON, YAML, XML translator to ANY format using templates

118Text ProcessingMarkup Languages
overalls

Multi-Package go project coverprofile for tools like goveralls

116Continuous IntegrationContinuous Integration
disgo

Go API Wrapper for the Discord API

116Third-party APIsThird-party APIs
gommit

Analyze git commit messages to ensure they follow defined patterns

115MiscellaneousUncategorized
Mantil

Go specific framework for building serverless applications on AWS that enables you to focus on pure Go code while Mantil takes care of the infrastructure

115Software PackagesDevOps Tools
rabbitroutine

Lightweight library that handles RabbitMQ auto-reconnect and publishing retries. The library takes into account the need to re-declare entities in RabbitMQ after reconnection

115MessagingMessaging
bagme

HTML/CSS to PDF rendering with TeX-quality typesetting in pure Go

115Template EnginesTemplate Engines
version

Collects and displays CLI version information in multiple formats along with upgrade notice

114Command LineStandard CLI
gofreetds

Microsoft MSSQL driver. Go wrapper over [FreeTDS](https://www.freetds.org)

114Database DriversRelational Database Drivers
binstruct

Golang binary decoder for mapping data into the structure

114SerializationSerialization
cookie

Cookie struct parsing and helper package

114UtilitiesUtilities
checkdigit

Provide check digit algorithms (Luhn, Verhoeff, Damm) and calculators (ISBN, EAN, JAN, UPC, etc.)

114ValidationValidation
go-store

Simple and fast Redis backed key-value store library for Go

113ORMORM
colorgo

Wrapper around `go` command for colorized `go build` output.

113Go ToolsPlugin for text editors and IDEs.
godis

redis client implement by golang, inspired by jedis

112Database DriversNoSQL Database Drivers
checksum

Compute message digest, like MD5, SHA256, SHA1, CRC or BLAKE2s, for large files

112File HandlingFile Handling
gonerics

Idiomatic Generics in Go

112Go Generate ToolsGo Generate Tools
options-gen

Functional options described by Dave Cheney's post "Functional options for friendly APIs"

112Go Generate ToolsGo Generate Tools
kickstart.go

Minimalistic single-file Go HTTP server template without third-party dependencies

112MiscellaneousProject Layout
pagser

Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler

112Text ProcessingScrapers
JayDiff

JSON diff utility written in Go

111JSONJSON
oplog

Generic oplog/replication system for REST APIs

111MessagingMessaging
indigo

Distributed unique ID generator of using Sonyflake and encoded by Base58

111MiscellaneousUncategorized
hipchat (xmpp)

A golang package to communicate with HipChat over XMPP

111Third-party APIsThird-party APIs
gogu

A comprehensive, reusable and efficient concurrent-safe generics utility functions and data structures library

109Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
doublejump

A revamped Google's jump consistent hash

109Distributed SystemsDistributed Systems
prototype

Cross-platform (Windows/Linux/Mac) library for creating desktop games using a minimal API

109Game DevelopmentGame Development
gotoprom

Type-safe metrics builder wrapper library for the official Prometheus client

109MiscellaneousUncategorized
go-imap

Batteries-included IMAP client with auto-reconnect, OAuth2, IDLE support, and built-in MIME parsing

109EmailEmail
configuration

Library for initializing configuration structs from env variables, files, flags and 'default' tag

108ConfigurationConfiguration
jsongo

Fluent API to make it easier to create Json objects

108JSONJSON
godoclive

Generates interactive API documentation from Go HTTP handlers using static analysis of chi, gin, and net/http routers

108UtilitiesUtilities
vert

Interop between Go and JS values

108WebAssemblyWebAssembly
go-mcache

Fast in-memory key:value store/cache library. Pointer caches

107DatabaseCaches