List of Go projects that using generics or based on generics implementation.
- go.dev/tutorial/generics – Introduces the basics of generics in Go (external official resource).
- gosamples.dev/generics-intro – Learn the basics of Go Generics with practical examples (external resource).
- akutz/go-generics-the-hard-way – A hands-on approach to getting started with generics.
- Skarlso/grokking-algorithms – Examples for the book Grokking Algorithms written in Go with generics.
- zyedidia/generic – A collection of generic data structures (
queue
,heap
,stack
, etc.). - HotPotatoC/sture – A collection of data structures (
Stack
,Queue
,Linked List
, etc.). - cznic/b – Implements a B+tree.
- thejerf/cm - Nested maps, dual-keyed maps, Set structure.
- samber/lo – A Lodash-style Go library (map, filter, contains, find).
- life4/genesis – Functional programming generics functions.
- mikhailswift/go-collections – Utility functions for dealing with collections
- devnw/stream – A set of generic functions for working concurrent design patterns.
- GavinClarke0/lockless-generic-ring-buffer – An implementation of a single producer, multi reader lockless ring buffer utilizing generics.
- bradenaw/juniper – A library of extensions to the Go standard library using generics, including containers, iterators, and streams.
- Soft/iter – A generic iterator library similar to Rust's Iterator trait.
- k-yomo/fixtory – A test fixture factory which initializes type-safe, DRY, flexible fixtures.
- luraim/fun – Simple generic utility functions. Inspired by Kotlin and Rust collection functions.
- kevwan/mapreduce – A in-process MapReduce library to help you optimizing service response time or concurrent task processing.
- zhangyunhao116/pdqsort – Pattern-defeating quicksort. About 2x ~ 60x faster than the built-in sort package.
- modfin/henry – Helper functions in dealing with slices, maps and channels.
- Goldziher/go-utils – Simple and performant utilies using Go generics inspired by JavaScript and Python.
- jonbodner/gcon – Simple library to add async/await to Go using generics and closures.
- eddieowens/axon – A simple, lightweight, and lazy-loaded DI (really just a singleton management) library.
- Code-Hex/go-generics-cache – An in-memory key:value store/cache that is suitable for applications running on a single machine.
- soypat/mu8 – Simple unsupervised machine learning package.
- dboslee/lru – Simple LRU cache.
- floatdrop/2q – Thread safe 2Q cache.
- daodao97/ggm – Generics ORM based on sqlx package.
- alistanis/cache – Sharded thread safe LRU cache.
- num30/go-cache – An in-memory key:value store/cache (similar to Memcached) library.