Awesome Go

Search

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

2,739 results

bitmap

Dense, zero-allocation, SIMD-enabled bitmap/bitset in Go

Data Structures and AlgorithmsBit Sets
bitset

Go package implementing bitsets

Data Structures and AlgorithmsBit Sets
bloom

Go package implementing Bloom filters

Data Structures and AlgorithmsBloom and Cuckoo Filters
bloom

Bloom filters implemented in Go

Data Structures and AlgorithmsBloom and Cuckoo Filters
bloom

Golang Bloom filter implementation

Data Structures and AlgorithmsBloom and Cuckoo Filters
bloomfilter

Yet another Bloomfilter implementation in Go, compatible with Java's Guava library

Data Structures and AlgorithmsBloom and Cuckoo Filters
boomfilters

Probabilistic data structures for processing continuous, unbounded streams

Data Structures and AlgorithmsBloom and Cuckoo Filters
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

Data Structures and AlgorithmsBloom and Cuckoo Filters
cuckoofilter

Cuckoo filter: a good alternative to a counting bloom filter implemented in Go

Data Structures and AlgorithmsBloom and Cuckoo Filters
ring

Go implementation of a high performance, thread safe bloom filter

Data Structures and AlgorithmsBloom and Cuckoo Filters
algorithms

Algorithms and data structures.CLRS study

Data Structures and AlgorithmsData Structure and Algorithm Collections
go-datastructures

Collection of useful, performant, and thread-safe data structures

Data Structures and AlgorithmsData Structure and Algorithm Collections
gods

Go Data Structures. Containers, Sets, Lists, Stacks, Maps, BidiMaps, Trees, HashSet etc

Data Structures and AlgorithmsData Structure and Algorithm Collections
gostl

Data structure and algorithm library for go, designed to provide functions similar to C++ STL

Data Structures and AlgorithmsData Structure and Algorithm Collections
goterator

Iterator implementation to provide map and reduce functionalities

Data Structures and AlgorithmsIterators
iter

Go implementation of C++ STL iterators and algorithms

Data Structures and AlgorithmsIterators
cmap

a thread-safe concurrent map for go, support using `interface{}` as key and auto scale up shards

Data Structures and AlgorithmsMaps
dict

Python-like dictionaries (dict) for Go

Data Structures and AlgorithmsMaps
go-shelve

A persistent, map-like object for the Go programming language. Supports multiple embedded key-value stores

Data Structures and AlgorithmsMaps
goradd/maps

Go 1.18+ generic map interface for maps; safe maps; ordered maps; ordered, safe maps; etc

Data Structures and AlgorithmsMaps
concurrent-writer

Highly concurrent drop-in replacement for `bufio.Writer`

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
count-min-log

Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory)

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
fsm

Finite-State Machine package

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
genfuncs

Go 1.18+ generics package inspired by Kotlin's Sequence and Map

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go-generics

Generic slice, map, set, iterator, and goroutine utilities

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go-geoindex

In-memory geo index

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go-rampart

Determine how intervals relate to each other

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go-rquad

Region quadtrees with efficient point location and neighbour finding

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go-tuple

Generic tuple implementation for Go 1.18+

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
go18ds

Go Data Structures using Go 1.18 generics

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
gofal

fractional api for Go

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
gogu

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

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
gota

Implementation of dataframes, series, and data wrangling methods for Go

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
hide

ID type with marshalling to/from hash to prevent sending IDs to clients

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
hyperloglog

HyperLogLog implementation with Sparse, LogLog-Beta bias correction and TailCut space reduction

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
quadtree

Generic, zero-alloc, 100%-test covered quadtree

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
slices

Pure, generic functions for slices

Data Structures and AlgorithmsMiscellaneous Data Structures and Algorithms
nan

Zero allocation Nullable structures in one library with handy conversion functions, marshallers and unmarshallers

Data Structures and AlgorithmsNullable Types
null

Nullable Go types that can be marshalled/unmarshalled to/from JSON

Data Structures and AlgorithmsNullable Types
typ

Null Types, Safe primitive type conversion and fetching value from complex structures

Data Structures and AlgorithmsNullable Types
deque

A highly optimized double-ended queue

Data Structures and AlgorithmsQueues
deque

Fast ring-buffer deque (double-ended queue)

Data Structures and AlgorithmsQueues
goconcurrentqueue

Concurrent FIFO queue

Data Structures and AlgorithmsQueues
memlog

An easy to use, lightweight, thread-safe and append-only in-memory data structure inspired by Apache Kafka

Data Structures and AlgorithmsQueues
queue

Multiple thread-safe, generic queue implementations for Go

Data Structures and AlgorithmsQueues
dsu

Disjoint Set data structure implementation in Go

Data Structures and AlgorithmsSets
golang-set

Thread-Safe and Non-Thread-Safe high-performance sets for Go

Data Structures and AlgorithmsSets
goset

A useful Set collection implementation for Go

Data Structures and AlgorithmsSets
set

Simple set data structure implementation in Go using LinkedHashMap

Data Structures and AlgorithmsSets
bleve

Modern text indexing library for go

Data Structures and AlgorithmsText Analysis