Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 Generic Open-Source Projects
-
golang-set
A simple, battle-tested and generic set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
rueidis
A fast Golang Redis client that supports Client Side Caching, Auto Pipelining, Generics OM, RedisJSON, RedisBloom, RediSearch, etc.
-
pie
🍕 Enjoy a slice! A utility library for dealing with slices and maps that focuses on type safety and performance. (by elliotchance)
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
go-generics-cache
A key:value store/cache library written in Go generics. LRU, LFU, FIFO, MRU, Clock support.
-
staticvec
Implements a fixed-capacity stack-allocated Vec alternative backed by an array, using const generics.
-
awesome-go
🌟 My personal "awesome" list of Go code, tools, books, and learning resources. I'm very picky about what makes it on. Want to learn Go? Start here. (by rwxrob)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
On the other hand, I advise you NOT to use this kind of library and write simple, fast go code most of the time, with the occasional generics helper. Why the hell would I clutter my code with, for example: https://github.com/samber/lo?tab=readme-ov-file#fromentries-...
Project mention: Show HN: A comprehensive, efficient, and reusable util function library of Go | news.ycombinator.com | 2024-02-20
Project mention: Functional Programming Library for Golang by IBM | news.ycombinator.com | 2023-08-17A simple alternative is the combination of:
- https://github.com/samber/lo
- https://github.com/samber/mo
The split is also nice as you can choose to just use the generic convenience functions from lo without the more FP related things from mo.
Project mention: Show HN: A Cache-Aside Pattern Implementation Enhanced by Client Side Caching | news.ycombinator.com | 2023-07-16
gomacro added macros and generics several years before generics reached release.
Project mention: v3.1.0 of ttlcache - an in-memory cache with item expiration and generics | /r/golang | 2023-08-25
Time to deal with the large elephant in the room, the runtime.mapaccess2_fast64 map lookup. Despite spending some hours of research, I couldn't found any viable way to optimize the builtin map. However, there is a community alternative called Swiss Map, which sells itself as faster and more memory efficient than the builtin one. Replacing it is almost a drop-in, with just some syntax changes:
Project mention: Enum: Type safe enums for Go without code generation or reflection | news.ycombinator.com | 2023-08-30
Project mention: Posting asking if the Rust Reddit community is overly regulated gets regulated. | /r/programmingcirclejerk | 2023-05-27This crate of mine for example is currently literally unusable until the deeply fundamental features that John Random kinda-sorta removed in this pull request, ostensibly in preparation for whatever shittily stated syntax is ultimately establihed by whatever the hell "keyword generics" actually is (I really don't know, like this isn't a joke, I fundamentally do not understand what the fuck they're proposing at all in any way or how it's meaningfully and usefullly different from the previous syntax).
Generics related posts
- One Billion Row Challenge in Golang - From 95s to 1.96s
- Golang Port of Abseil's SwissTable
- Go is not an easy language (2021)
- v3.1.0 of ttlcache - an in-memory cache with item expiration and generics
- Functional Programming Library for Golang by IBM
- A lightweight Golang generics library that provides Map, Reduce and more
- A lightweight Golang generics library that provides Map, Reduce and more
-
A note from our sponsor - InfluxDB
www.influxdata.com | 23 Apr 2024
Index
What are some of the best open-source Generic projects? This list will help you:
Project | Stars | |
---|---|---|
1 | lo | 15,293 |
2 | golang-set | 3,908 |
3 | lancet | 3,675 |
4 | mo | 2,245 |
5 | rueidis | 2,178 |
6 | gomacro | 2,134 |
7 | pie | 1,823 |
8 | do | 1,585 |
9 | gen | 1,432 |
10 | generic | 1,267 |
11 | goderive | 1,167 |
12 | Time | 1,071 |
13 | Time | 964 |
14 | ttlcache | 842 |
15 | swiss | 660 |
16 | generic-records | 434 |
17 | go-generics-cache | 413 |
18 | Arrow Meta | 389 |
19 | Observable | 369 |
20 | genesis | 330 |
21 | enum | 326 |
22 | staticvec | 267 |
23 | awesome-go | 198 |
Sponsored