Awesome Go

Search

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

3,042 results

tasks

An easy to use in-process scheduler for recurring tasks in Go

334Job SchedulerJob Scheduler
cupaloy

Simple snapshot testing addon for your test framework

333TestingTesting Frameworks
BadActor

In-memory, application-driven jailer built in the spirit of fail2ban

328SecuritySecurity
go-peer

A software library for creating secure and anonymous decentralized systems

327SecuritySecurity
tickgit

CLI and go package for surfacing code comment TODOs (in any language) and applying a `git blame`to identify the author

324Code AnalysisCode Analysis
conform

Keeps user input in check. Trims, sanitizes & scrubs data based on struct tags

323FormsForms
fp-go

Collection of Functional Programming helpers powered by Golang 1.18+ generics

323FunctionalFunctional
sturdyc

A caching library with advanced concurrency features designed to make I/O heavy applications robust and highly performant.

322DatabaseData stores with expiring records, in-memory distributed data stores, or in-memory subsets of file-based databases.
go-couchbase

Couchbase client in Go

321Database DriversNoSQL Database Drivers
surrealdb.go

SurrealDB Driver for Go

318Database DriversRelational Database Drivers
async

An alternative sync library for Go (Future, Promise, Locks)

318GoroutinesGoroutines
wescale

WeScale is a database proxy designed to enhance the scalability, performance, security, and resilience of your applications

317DatabaseDatabase Tools
ffmt

Beautify data display for Humans

317MiscellaneousUncategorized
gobl

Invoice and billing document framework. JSON Schema based. Automates tax calculations and validation, with tooling to convert into global formats

316FinancialFinancial
go-webp

Library for encode and decode webp pictures, using libwebp

314ImagesImages
Mora

REST server for accessing MongoDB documents and meta data

313Software PackagesDevOps Tools
go-actor

A tiny library for writing concurrent programs using actor model

312GoroutinesGoroutines
regommend

Recommendation & collaborative filtering engine

312Machine LearningMachine Learning
Zoom

Blazing-fast datastore and querying engine built on Redis

311ORMORM
gotenv

Load environment variables from `.env` or any `io.Reader` in Go

310UtilitiesUtilities
langgraphgo

A Go library for building stateful, multi-actor applications with LLMs, built on the concept of LangGraph,with a lot of builtin Agent architectures

309Artificial IntelligenceArtificial Intelligence
go-unarr

Decompression library for RAR, TAR, ZIP and 7z archives

309MiscellaneousUncategorized
WebGo

A micro-framework to build web apps with handler chaining, middleware, and context injection. With standard library-compliant HTTP handlers (i.e., `http.HandlerFunc`).

309Web FrameworksWeb Frameworks
Balerter

A self-hosted script-based alerting manager

308Software PackagesDevOps Tools
Fault

An ergonomic mechanism for wrapping errors in order to facilitate structured metadata and context for error values

307Error HandlingError Handling
c2go

Convert C code to Go code.

307Go CompilersTools for compiling Go to other languages.
manssh

manssh is a command line tool for managing your ssh alias config easily

307Software PackagesDevOps Tools
cuckoo-filter

Cuckoo filter: a comprehensive cuckoo filter, which is configurable and space optimized compared with other implements, and all features mentioned in original paper are available

306Data Structures and AlgorithmsBloom and Cuckoo Filters
Ark

Archetype-based Entity Component System (ECS) for Go

305Game DevelopmentGame Development
Ginrpc

Gin parameter automatic binding tool,gin rpc tools

304Web FrameworksWeb Frameworks
wellington

Sass project management tool, extends the language with sprite functions (like Compass)

301Software PackagesOther Software
go-instrument

Automatically add spans to all methods and functions

301PerformancePerformance
WebhookX

A webhooks gateway for message receiving, processing, and reliable delivering

300Webhooks ServerWebhooks Server
coregex

Production regex engine with Rust regex-crate architecture: multi-engine DFA/NFA, SIMD prefilters, drop-in stdlib replacement

299Text ProcessingRegular Expressions
util

Collection of useful utility functions. (strings, concurrency, manipulations, ...)

299UtilitiesUtilities
go-exiftool

Go bindings for ExifTool, the well-known library used to extract as much metadata as possible (EXIF, IPTC, ...) from files (pictures, PDF, office, ...)

298File HandlingFile Handling
Cherry

Tiny webchat server in Go

298Software PackagesOther Software
skiplist

Very fast Go Skiplist implementation

296Data Structures and AlgorithmsTrees
ajson

Abstract JSON for golang with JSONPath support

295JSONJSON
kazaam

API for arbitrary transformation of JSON documents

295JSONJSON
request

HTTP client for golang. If you have experience about axios or requests, you will love it. No 3rd dependency

295NetworkingHTTP Clients
openaigo

OpenAI GPT3/GPT3.5 ChatGPT API client library for Go

295Third-party APIsThird-party APIs
log

Simple, configurable and scalable Structured Logging for Go

293LoggingLogging
rollingwriter

RollingWriter is an auto-rotate `io.Writer` implementation with multi policies to provide log file rotation

292LoggingLogging
routine

`routine` is a `ThreadLocal` for go library. It encapsulates and provides some easy-to-use, non-competitive, high-performance `goroutine` context access interfaces, which can help you access coroutine context information more gracefully

291GoroutinesGoroutines
transformimgs

Transformimgs resizes and optimises images for Web using next-generation formats

291ImagesImages
interpose

Minimalist net/http middleware for golang

291Web FrameworksMiddlewares
gatewayd

Cloud-native database gateway and framework for building data-driven applications. Like API gateways, for databases

290DatabaseDatabase Tools
rabtap

RabbitMQ swiss army knife cli app

290MessagingMessaging
ethernet

Package ethernet implements marshaling and unmarshalling of IEEE 802.3 Ethernet II frames and IEEE 802.1Q VLAN tags

289NetworkingNetworking