Any major projects using generics?

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/golang

Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • CodiumAI - TestGPT | Generating meaningful tests for busy devs
  • ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
  • InfluxDB - Access the most powerful time series database as a service
  • lo

    💥 A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)

    I'm not sure what you mean with "major" but I've been using https://github.com/samber/lo more often than I expected when I first heard about it.

  • graph

    A library for creating generic graph data structures and modifying, analyzing, and visualizing them. 一款用于创建通用图数据结构、对其进行修改、分析和可视化的库。

    Not a major project, but my purely generic graph library gained some traction recently.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • connect-go

    Simple, reliable, interoperable. A better gRPC.

  • core

    Backend server API handling user mgmt, database, storage and real-time component (by staticbackendhq)

    it depend what "major" means, I use them in my Firebase alternative Go project and in the go package: https://pkg.go.dev/github.com/staticbackendhq/core/backend

  • surf

    CLI Text Search across your infrastructure platforms, It's like grep for infra (by Isan-Rivkin)

    I created this project and its using generics https://github.com/Isan-Rivkin/surf

  • golang-set

    A simple, battle-tested and generic set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp.

    golang-set is a set implementation used by docker, ethereum and others. 2.8k stars on GitHub. Pretty popular project. Not sure if it counts as major. https://github.com/deckarep/golang-set

  • concurrent-map

    a thread-safe concurrent map for go

    For libraries I use at work, cmap has a v2 using generics. I think that's a fairly widely used library. The events library we use is updated, but not released. When I get a chance, planning on looking on moving to hooks, which does have released generics support.

  • CodiumAI

    TestGPT | Generating meaningful tests for busy devs. Get non-trivial tests (and trivial, too!) suggested right inside your IDE, so you can code smart, create more value, and stay confident when you push.

  • go-events

    :mega: Pure nodejs EventEmmiter for the Go Programming Language.

    For libraries I use at work, cmap has a v2 using generics. I think that's a fairly widely used library. The events library we use is updated, but not released. When I get a chance, planning on looking on moving to hooks, which does have released generics support.

  • hooks

    Simple, type-safe hook system to enable easier modularization of your Go code. (by mikestefanello)

    For libraries I use at work, cmap has a v2 using generics. I think that's a fairly widely used library. The events library we use is updated, but not released. When I get a chance, planning on looking on moving to hooks, which does have released generics support.

  • test

    A modern generic testing assertions library for Go (by shoenig)

    https://github.com/shoenig/test is a test case assertions library (like testify) centered around generics

  • verify

    Extensible, type-safe, fluent assertion Go library. (by fluentassert)

    https://github.com/fluentassert/verify another assertion library

  • btree

    BTree provides a simple, ordered, in-memory data structure for Go programs.

  • gocache

    ☔️ A complete Go cache library that brings you multiple ways of managing your caches

    We are using https://github.com/eko/gocache in production projects.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts