An open API service indexing awesome lists of open source software.

awesome-go-plus

A curated list of awesome Go frameworks, libraries and software
https://github.com/jayecc/awesome-go-plus

Last synced: 6 days ago
JSON representation

  • File Handling

      • afs - Abstract File Storage (mem, scp, zip, tar, cloud: s3, gs) for Go. ![stars](https://img.shields.io/badge/stars-321-blue)
      • baraka - A library to process http file uploads easily. ![stars](https://img.shields.io/badge/stars-60-blue)
      • checksum - Compute message digest, like MD5, SHA256, SHA1, CRC or BLAKE2s, for large files. ![stars](https://img.shields.io/badge/stars-109-blue)
      • copy - Copy directory recursively. ![stars](https://img.shields.io/badge/stars-750-blue)
      • flop - File operations library which aims to mirror feature parity with [GNU cp](https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html). ![stars](https://img.shields.io/badge/stars-33-blue)
      • gdu - Disk usage analyzer with console interface. ![stars](https://img.shields.io/badge/stars-4342-blue)
      • go-csv-tag - Load csv file using tag. ![stars](https://img.shields.io/badge/stars-125-blue)
      • go-decent-copy - Copy files for humans. ![stars](https://img.shields.io/badge/stars-22-blue)
      • 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, ...). ![stars](https://img.shields.io/badge/stars-262-blue)
      • go-gtfs - Load gtfs files in go. ![stars](https://img.shields.io/badge/stars-47-blue)
      • go-wkhtmltopdf - A package to convert an HTML template to a PDF file. ![stars](https://img.shields.io/badge/stars-1108-blue)
      • gofs - A cross-platform real-time file synchronization tool out of the box. ![stars](https://img.shields.io/badge/stars-506-blue)
      • gulter - A simple HTTP middleware to automatically handle all your file upload needs ![stars](https://img.shields.io/badge/stars-65-blue)
      • gut/yos - Simple and reliable package for file operations like copy/move/diff/list on files, directories and symbolic links. ![stars](https://img.shields.io/badge/stars-26-blue)
      • higgs - A tiny cross-platform Go library to hide/unhide files and directories. ![stars](https://img.shields.io/badge/stars-24-blue)
      • iso9660 - A package for reading and creating ISO9660 disk images ![stars](https://img.shields.io/badge/stars-273-blue)
      • notify - File system event notification library with simple API, similar to os/signal. ![stars](https://img.shields.io/badge/stars-916-blue)
      • opc - Load Open Packaging Conventions (OPC) files for Go. ![stars](https://img.shields.io/badge/stars-75-blue)
      • parquet - Read and write [parquet](https://parquet.apache.org) files. ![stars](https://img.shields.io/badge/stars-117-blue)
      • pathtype - Treat paths as their own type instead of using strings. ![stars](https://img.shields.io/badge/stars-12-blue)
      • pdfcpu - PDF processor. ![stars](https://img.shields.io/badge/stars-7460-blue)
      • skywalker - Package to allow one to concurrently go through a filesystem with ease. ![stars](https://img.shields.io/badge/stars-102-blue)
      • todotxt - Go library for Gina Trapani's [_todo.txt_](http://todotxt.org/) files, supports parsing and manipulating of task lists in the [_todo.txt_ format](https://github.com/todotxt/todo.txt). ![stars](https://img.shields.io/badge/stars-25-blue)
      • vfs - A pluggable, extensible, and opinionated set of filesystem functionality for Go across a number of filesystem types such as os, S3, and GCS. ![stars](https://img.shields.io/badge/stars-331-blue)
  • Financial

      • accounting - money and currency formatting for golang. ![stars](https://img.shields.io/badge/stars-890-blue)
      • ach - A reader, writer, and validator for Automated Clearing House (ACH) files. ![stars](https://img.shields.io/badge/stars-481-blue)
      • bbgo - A crypto trading bot framework written in Go. Including common crypto exchange API, standard indicators, back-testing and many built-in strategies. ![stars](https://img.shields.io/badge/stars-1327-blue)
      • currency - Handles currency amounts, provides currency information and formatting. ![stars](https://img.shields.io/badge/stars-582-blue)
      • currency - High performant & accurate currency computation package. ![stars](https://img.shields.io/badge/stars-61-blue)
      • decimal - Arbitrary-precision fixed-point decimal numbers. ![stars](https://img.shields.io/badge/stars-6672-blue)
      • decimal - Immutable decimal numbers with panic-free arithmetic. ![stars](https://img.shields.io/badge/stars-153-blue)
      • fpdecimal - Fast and precise serialization and arithmetic for small fixed-point decimals ![stars](https://img.shields.io/badge/stars-31-blue)
      • fpmoney - Fast and simple ISO4217 fixed-point decimal money. ![stars](https://img.shields.io/badge/stars-34-blue)
      • go-finance - Library of financial functions for time value of money (annuities), cash flow, interest rate conversions, bonds and depreciation calculations. ![stars](https://img.shields.io/badge/stars-180-blue)
      • go-finance - Module to fetch exchange rates, check VAT numbers via VIES and check IBAN bank account numbers. ![stars](https://img.shields.io/badge/stars-28-blue)
      • go-finnhub - Client for stock market, forex and crypto data from finnhub.io. Access real-time financial market data from 60+ stock exchanges, 10 forex brokers, and 15+ crypto exchanges. ![stars](https://img.shields.io/badge/stars-93-blue)
      • go-money - Implementation of Fowler's Money pattern. ![stars](https://img.shields.io/badge/stars-1755-blue)
      • go-nowpayments - Library for the crypto NOWPayments API. ![stars](https://img.shields.io/badge/stars-3-blue)
      • ledger - A programmable financial ledger that provides a foundation for money-moving applications. ![stars](https://img.shields.io/badge/stars-946-blue)
      • money - Immutable monetary amounts and exchange rates with panic-free arithmetic. ![stars](https://img.shields.io/badge/stars-34-blue)
      • ofxgo - Query OFX servers and/or parse the responses (with example command-line client). ![stars](https://img.shields.io/badge/stars-142-blue)
      • orderbook - Matching Engine for Limit Order Book in Golang. ![stars](https://img.shields.io/badge/stars-476-blue)
      • payme - QR code generator (ASCII & PNG) for SEPA payments. ![stars](https://img.shields.io/badge/stars-86-blue)
      • sleet - One unified interface for multiple Payment Service Providers (PsP) to process online payment. ![stars](https://img.shields.io/badge/stars-140-blue)
      • swift - Offline validity check of IBAN (International Bank Account Number) and retrieval of BIC (for some countries).
      • techan - Technical analysis library with advanced market analysis and trading strategies. ![stars](https://img.shields.io/badge/stars-857-blue)
      • ticker - Terminal stock watcher and stock position tracker. ![stars](https://img.shields.io/badge/stars-5153-blue)
      • transaction - Embedded transactional database of accounts, running in multithreaded mode. ![stars](https://img.shields.io/badge/stars-134-blue)
      • udecimal - High performance, high precision, zero allocation fixed-point decimal library for financial applications. ![stars](https://img.shields.io/badge/stars-140-blue)
      • vat - VAT number validation & EU VAT rates. ![stars](https://img.shields.io/badge/stars-112-blue)
  • Forms

      • bind - Bind form data to any Go values. ![stars](https://img.shields.io/badge/stars-32-blue)
      • checker - Checker helps validating user input through rules defined in struct tags or directly through functions. ![stars](https://img.shields.io/badge/stars-39-blue)
      • conform - Keeps user input in check. Trims, sanitizes & scrubs data based on struct tags. ![stars](https://img.shields.io/badge/stars-324-blue)
      • form - Decodes url.Values into Go value(s) and Encodes Go value(s) into url.Values. Dual Array and Full map support. ![stars](https://img.shields.io/badge/stars-811-blue)
      • formam - decode form's values into a struct. ![stars](https://img.shields.io/badge/stars-192-blue)
      • forms - Framework-agnostic library for parsing and validating form/JSON data which supports multipart forms and files. ![stars](https://img.shields.io/badge/stars-142-blue)
      • gbind - Bind data to any Go value. Can use built-in and custom expression binding capabilities; supports data validation ![stars](https://img.shields.io/badge/stars-10-blue)
      • gorilla/csrf - CSRF protection for Go web applications & services. ![stars](https://img.shields.io/badge/stars-1102-blue)
      • httpin - Decode an HTTP request into a custom struct, including querystring, forms, HTTP headers, etc. ![stars](https://img.shields.io/badge/stars-342-blue)
      • nosurf - CSRF protection middleware for Go. ![stars](https://img.shields.io/badge/stars-1634-blue)
      • qs - Go module for encoding structs into URL query parameters. ![stars](https://img.shields.io/badge/stars-78-blue)
      • queryparam - Decode `url.Values` into usable struct values of standard or custom types. ![stars](https://img.shields.io/badge/stars-19-blue)
  • Functional

      • fp-go - Collection of Functional Programming helpers powered by Golang 1.18+ generics. ![stars](https://img.shields.io/badge/stars-312-blue)
      • fpGo - Monad, Functional Programming features for Golang. ![stars](https://img.shields.io/badge/stars-350-blue)
      • fuego - Functional Experiment in Go. ![stars](https://img.shields.io/badge/stars-143-blue)
      • go-functional - Functional programming in Go using generics ![stars](https://img.shields.io/badge/stars-494-blue)
      • go-underscore - Useful collection of helpfully functional Go collection utilities. ![stars](https://img.shields.io/badge/stars-1301-blue)
      • gofp - A lodash like powerful utility library for Golang. ![stars](https://img.shields.io/badge/stars-148-blue)
      • mo - Monads and popular FP abstractions, based on Go 1.18+ Generics (Option, Result, Either...). ![stars](https://img.shields.io/badge/stars-2915-blue)
      • underscore - Functional programming helpers for Go 1.18 and beyond. ![stars](https://img.shields.io/badge/stars-112-blue)
      • valor - Generic option and result types that optionally contain a value. ![stars](https://img.shields.io/badge/stars-16-blue)
  • Game Development

      • Ark - Archetype-based Entity Component System (ECS) for Go. ![stars](https://img.shields.io/badge/stars-63-blue)
      • Ebitengine - dead simple 2D game engine in Go. ![stars](https://img.shields.io/badge/stars-11845-blue)
      • ecs - Build your own Game-Engine based on the Entity Component System concept in Golang. ![stars](https://img.shields.io/badge/stars-140-blue)
      • engo - Engo is an open-source 2D game engine written in Go. It follows the Entity-Component-System paradigm. ![stars](https://img.shields.io/badge/stars-1778-blue)
      • fantasyname - Fantasy names generator. ![stars](https://img.shields.io/badge/stars-36-blue)
      • g3n - Go 3D Game Engine. ![stars](https://img.shields.io/badge/stars-2910-blue)
      • go-astar - Go implementation of the A\* path finding algorithm. ![stars](https://img.shields.io/badge/stars-611-blue)
      • go-sdl2 - Go bindings for the [Simple DirectMedia Layer](https://www.libsdl.org/). ![stars](https://img.shields.io/badge/stars-2286-blue)
      • go3d - Performance oriented 2D/3D math package for Go. ![stars](https://img.shields.io/badge/stars-318-blue)
      • gonet - Game server skeleton implemented with golang. ![stars](https://img.shields.io/badge/stars-1280-blue)
      • goworld - Scalable game server engine, featuring space-entity framework and hot-swapping. ![stars](https://img.shields.io/badge/stars-2622-blue)
      • grid - Generic 2D grid with ray-casting, shadow-casting and path finding. ![stars](https://img.shields.io/badge/stars-20-blue)
      • Harfang3D - 3D engine for the Go language, works on Windows and Linux ([Harfang on Go.dev](https://github.com/harfang3d/harfang-go)). ![stars](https://img.shields.io/badge/stars-605-blue)
      • Leaf - Lightweight game server framework. ![stars](https://img.shields.io/badge/stars-5373-blue)
      • nano - Lightweight, facility, high performance golang based game server framework. ![stars](https://img.shields.io/badge/stars-2984-blue)
      • Oak - Pure Go game engine. ![stars](https://img.shields.io/badge/stars-1612-blue)
      • Pitaya - Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK. ![stars](https://img.shields.io/badge/stars-2507-blue)
      • Pixel - Hand-crafted 2D game library in Go. ![stars](https://img.shields.io/badge/stars-315-blue)
      • prototype - Cross-platform (Windows/Linux/Mac) library for creating desktop games using a minimal API. ![stars](https://img.shields.io/badge/stars-89-blue)
      • raylib-go - Go bindings for [raylib](https://www.raylib.com/), a simple and easy-to-use library to learn videogames programming. ![stars](https://img.shields.io/badge/stars-1981-blue)
      • termloop - Terminal-based game engine for Go, built on top of Termbox. ![stars](https://img.shields.io/badge/stars-1455-blue)
      • tile - Data-oriented and cache-friendly 2D Grid library (TileMap), includes pathfinding, observers and import/export. ![stars](https://img.shields.io/badge/stars-187-blue)
  • Generators

      • convergen - Feature rich type-to-type copy code generator. ![stars](https://img.shields.io/badge/stars-45-blue)
      • copygen - Generate any code based on Go types, including type-to-type converters (copy code) without reflection by default. ![stars](https://img.shields.io/badge/stars-381-blue)
      • generis - Code generation tool providing generics, free-form macros, conditional compilation and HTML templating. ![stars](https://img.shields.io/badge/stars-45-blue)
      • go-enum - Code generation for enums from code comments. ![stars](https://img.shields.io/badge/stars-818-blue)
      • go-enum-encoding - Code generation for enum encoding from code comments. ![stars](https://img.shields.io/badge/stars-14-blue)
      • goderive - Derives functions from input types ![stars](https://img.shields.io/badge/stars-1257-blue)
      • goverter - Generate converters by defining an interface. ![stars](https://img.shields.io/badge/stars-657-blue)
      • GoWrap - Generate decorators for Go interfaces using simple templates. ![stars](https://img.shields.io/badge/stars-1180-blue)
      • interfaces - Command line tool for generating interface definitions. ![stars](https://img.shields.io/badge/stars-429-blue)
      • jennifer - Generate arbitrary Go code without templates. ![stars](https://img.shields.io/badge/stars-3467-blue)
      • oapi-codegen - This package contains a set of utilities for generating Go boilerplate code for services based on OpenAPI 3.0 API definitions. ![stars](https://img.shields.io/badge/stars-6942-blue)
      • typeregistry - A library to create type dynamically. ![stars](https://img.shields.io/badge/stars-23-blue)
      • go-linq - .NET LINQ-like query methods for Go. ![stars](https://img.shields.io/badge/stars-3569-blue)
  • Geographic

      • geoos - A library provides spatial data and geometric algorithms. ![stars](https://img.shields.io/badge/stars-515-blue)
      • geoserver - geoserver Is a Go Package For Manipulating a GeoServer Instance via the GeoServer REST API. ![stars](https://img.shields.io/badge/stars-91-blue)
      • gismanager - Publish Your GIS Data(Vector Data) to PostGIS and Geoserver. ![stars](https://img.shields.io/badge/stars-54-blue)
      • godal - Go wrapper for GDAL. ![stars](https://img.shields.io/badge/stars-156-blue)
      • H3 - Go bindings for H3, a hierarchical hexagonal geospatial indexing system. ![stars](https://img.shields.io/badge/stars-339-blue)
      • H3 GeoJSON - Conversion utilities between H3 indexes and GeoJSON. ![stars](https://img.shields.io/badge/stars-4-blue)
      • H3GeoDist - Distribution of Uber H3geo cells by virtual nodes. ![stars](https://img.shields.io/badge/stars-2-blue)
      • mbtileserver - A simple Go-based server for map tiles stored in mbtiles format. ![stars](https://img.shields.io/badge/stars-701-blue)
      • osm - Library for reading, writing and working with OpenStreetMap data and APIs. ![stars](https://img.shields.io/badge/stars-399-blue)
      • pbf - OpenStreetMap PBF golang encoder/decoder. ![stars](https://img.shields.io/badge/stars-49-blue)
      • S2 geojson - Convert geojson to s2 cells & demonstrating some S2 geometry features on map. ![stars](https://img.shields.io/badge/stars-35-blue)
      • S2 geometry - S2 geometry library in Go. ![stars](https://img.shields.io/badge/stars-1736-blue)
      • simplefeatures - simplesfeatures is a 2D geometry library that provides Go types that model geometries, as well as algorithms that operate on them. ![stars](https://img.shields.io/badge/stars-141-blue)
      • Tile38 - Geolocation DB with spatial index and realtime geofencing. ![stars](https://img.shields.io/badge/stars-9303-blue)
      • Web-Mercator-Projection - 9-blue)
      • WGS84 - Library for Coordinate Conversion and Transformation (ETRS89, OSGB36, NAD83, RGF93, Web Mercator, UTM). ![stars](https://img.shields.io/badge/stars-136-blue)
  • Go Compilers

      • bunster - Compile shell scripts to Go. ![stars](https://img.shields.io/badge/stars-2292-blue)
      • c4go - Transpile C code to Go code. ![stars](https://img.shields.io/badge/stars-373-blue)
      • esp32 - Transpile Go into Arduino code. ![stars](https://img.shields.io/badge/stars-91-blue)
      • f4go - Transpile FORTRAN 77 code to Go code. ![stars](https://img.shields.io/badge/stars-48-blue)
      • go2hx - Compiler from Go to Haxe to Javascript/C++/Java/C#. ![stars](https://img.shields.io/badge/stars-125-blue)
      • gopherjs - Compiler from Go to JavaScript. ![stars](https://img.shields.io/badge/stars-12917-blue)
  • Go Generate Tools

    • Routers

      • envdoc - generate documentation for environment variables from Go source files. ![stars](https://img.shields.io/badge/stars-77-blue)
      • generic - flexible data type for Go. ![stars](https://img.shields.io/badge/stars-49-blue)
      • gocontracts - brings design-by-contract to Go by synchronizing the code with the documentation. ![stars](https://img.shields.io/badge/stars-111-blue)
      • godal - Generate orm models corresponding to golang by specifying sql ddl file, which can be used by gorm. ![stars](https://img.shields.io/badge/stars-18-blue)
      • gonerics - Idiomatic Generics in Go. ![stars](https://img.shields.io/badge/stars-113-blue)
      • gotests - Generate Go tests from your source code. ![stars](https://img.shields.io/badge/stars-5049-blue)
      • gounit - Generate Go tests using your own templates. ![stars](https://img.shields.io/badge/stars-84-blue)
      • hasgo - Generate Haskell inspired functions for your slices. ![stars](https://img.shields.io/badge/stars-143-blue)
      • options-gen - Functional options described by Dave Cheney's post "Functional options for friendly APIs". ![stars](https://img.shields.io/badge/stars-85-blue)
      • re2dfa - Transform regular expressions into finite state machines and output Go source code.
      • xgen - XSD (XML Schema Definition) parser and Go/C/Java/Rust/TypeScript code generator. ![stars](https://img.shields.io/badge/stars-360-blue)
  • Gophers

    • Free e-books

      • Free Gophers Pack - Gopher graphics pack by Maria Letta with illustrations and emotional characters in vector and raster. ![stars](https://img.shields.io/badge/stars-3718-blue)
      • Go-gopher-Vector - Go gopher Vector Data [.ai, .svg]. ![stars](https://img.shields.io/badge/stars-70-blue)
      • gopher-logos - adorable gopher logos. ![stars](https://img.shields.io/badge/stars-128-blue)
      • gopher-stickers - 595-blue)
      • gophericons - 622-blue)
      • gopherize.me - Gopherize yourself. ![stars](https://img.shields.io/badge/stars-725-blue)
      • gophers - Gopher artworks by Ashley McNamara. ![stars](https://img.shields.io/badge/stars-2992-blue)
      • gophers - Free gophers. ![stars](https://img.shields.io/badge/stars-3600-blue)
      • gophers - random gopher graphics. ![stars](https://img.shields.io/badge/stars-56-blue)
      • gophers - Gopher amigurumi toy pattern. ![stars](https://img.shields.io/badge/stars-152-blue)
      • gophers - Gophers by Aurélie Vache. ![stars](https://img.shields.io/badge/stars-34-blue)
  • Goroutines

      • ants - A high-performance and low-cost goroutine pool in Go. ![stars](https://img.shields.io/badge/stars-13522-blue)
      • async - An asynchronous task package with async/await style for Go. ![stars](https://img.shields.io/badge/stars-14-blue)
      • async - An alternative sync library for Go (Future, Promise, Locks). ![stars](https://img.shields.io/badge/stars-241-blue)
      • async - A safe way to execute functions asynchronously, recovering them in case of panic. ![stars](https://img.shields.io/badge/stars-139-blue)
      • async-job - AsyncJob is an asynchronous queue job manager with light code, clear and speed. ![stars](https://img.shields.io/badge/stars-12-blue)
      • breaker - Flexible mechanism to make execution flow interruptible. ![stars](https://img.shields.io/badge/stars-20-blue)
      • channelify - Transform your function to return channels for easy and powerful parallel processing. ![stars](https://img.shields.io/badge/stars-33-blue)
      • conc - `conc` is your toolbelt for structured concurrency in go, making common tasks easier and safer. ![stars](https://img.shields.io/badge/stars-9840-blue)
      • concurrency-limiter - Concurrency limiter with support for timeouts, dynamic priority and context cancellation of goroutines. ![stars](https://img.shields.io/badge/stars-18-blue)
      • conexec - A concurrent toolkit to help execute funcs concurrently in an efficient and safe way. It supports specifying the overall timeout to avoid blocking and uses goroutine pool to improve efficiency. ![stars](https://img.shields.io/badge/stars-18-blue)
      • cyclicbarrier - CyclicBarrier for golang. ![stars](https://img.shields.io/badge/stars-153-blue)
      • execpool - A pool built around exec.Cmd that spins up a given number of processes in advance and attaches stdin and stdout to them when needed. Very similar to FastCGI or Apache Prefork MPM but works for any command. ![stars](https://img.shields.io/badge/stars-29-blue)
      • go-accumulator - Solution for accumulation of events and their subsequent processing. ![stars](https://img.shields.io/badge/stars-8-blue)
      • go-actor - A tiny library for writing concurrent programs using actor model. ![stars](https://img.shields.io/badge/stars-211-blue)
      • go-floc - Orchestrate goroutines with ease. ![stars](https://img.shields.io/badge/stars-268-blue)
      • go-flow - Control goroutines execution order. ![stars](https://img.shields.io/badge/stars-220-blue)
      • go-tools/multithreading - Manage a pool of goroutines using this lightweight library with a simple API. ![stars](https://img.shields.io/badge/stars-16-blue)
      • go-trylock - TryLock support on read-write lock for Golang. ![stars](https://img.shields.io/badge/stars-36-blue)
      • go-waitgroup - Like `sync.WaitGroup` with error handling and concurrency control. ![stars](https://img.shields.io/badge/stars-49-blue)
      • go-workerpool - Inspired from Java Thread Pool, Go WorkerPool aims to control heavy Go Routines. ![stars](https://img.shields.io/badge/stars-11-blue)
      • go-workers - Easily and safely run workers for large data processing pipelines. ![stars](https://img.shields.io/badge/stars-166-blue)
      • goccm - Go Concurrency Manager package limits the number of goroutines that allowed to run concurrently. ![stars](https://img.shields.io/badge/stars-73-blue)
      • gohive - A highly performant and easy to use Goroutine pool for Go. ![stars](https://img.shields.io/badge/stars-53-blue)
      • gollback - asynchronous simple function utilities, for managing execution of closures and callbacks. ![stars](https://img.shields.io/badge/stars-125-blue)
      • goworker - goworker is a Go-based background worker. ![stars](https://img.shields.io/badge/stars-2817-blue)
      • gowp - gowp is concurrency limiting goroutine pool. ![stars](https://img.shields.io/badge/stars-523-blue)
      • gpool - manages a resizeable pool of context-aware goroutines to bound concurrency. ![stars](https://img.shields.io/badge/stars-90-blue)
      • grpool - Lightweight Goroutine pool. ![stars](https://img.shields.io/badge/stars-745-blue)
      • hands - A process controller used to control the execution and return strategies of multiple goroutines. ![stars](https://img.shields.io/badge/stars-10-blue)
      • Hunch - Hunch provides functions like: `All`, `First`, `Retry`, `Waterfall` etc., that makes asynchronous flow control more intuitive. ![stars](https://img.shields.io/badge/stars-105-blue)
      • kyoo - Provides an unlimited job queue and concurrent worker pools. ![stars](https://img.shields.io/badge/stars-49-blue)
      • neilotoole/errgroup - Drop-in alternative to `sync/errgroup`, limited to a pool of N worker goroutines. ![stars](https://img.shields.io/badge/stars-163-blue)
      • nursery - Structured concurrency in Go. ![stars](https://img.shields.io/badge/stars-68-blue)
      • oversight - Oversight is a complete implementation of the Erlang supervision trees.
      • parallel-fn - Run functions in parallel. ![stars](https://img.shields.io/badge/stars-37-blue)
      • pond - Minimalistic and High-performance goroutine worker pool written in Go. ![stars](https://img.shields.io/badge/stars-1736-blue)
      • pool - Limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation. ![stars](https://img.shields.io/badge/stars-730-blue)
      • rill - Go toolkit for clean, composable, channel-based concurrency. ![stars](https://img.shields.io/badge/stars-1656-blue)
      • 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. ![stars](https://img.shields.io/badge/stars-258-blue)
      • routine - go routine control with context, support: Main, Go, Pool and some useful Executors. ![stars](https://img.shields.io/badge/stars-61-blue)
      • semaphore - Semaphore pattern implementation with timeout of lock/unlock operations based on channel and context. ![stars](https://img.shields.io/badge/stars-103-blue)
      • semaphore - Fast resizable semaphore implementation based on CAS (faster than channel-based semaphore implementations). ![stars](https://img.shields.io/badge/stars-175-blue)
      • stl - Software transactional locks based on Software Transactional Memory (STM) concurrency control mechanism. ![stars](https://img.shields.io/badge/stars-30-blue)
      • threadpool - Golang threadpool implementation. ![stars](https://img.shields.io/badge/stars-104-blue)
      • tunny - Goroutine pool for golang. ![stars](https://img.shields.io/badge/stars-3975-blue)
      • worker-pool - goworker is a Go simple async worker pool. ![stars](https://img.shields.io/badge/stars-92-blue)
      • workerpool - Goroutine pool that limits the concurrency of task execution, not the number of tasks queued. ![stars](https://img.shields.io/badge/stars-1371-blue)
      • artifex - Simple in-memory job queue for Golang using worker-based dispatching. ![stars](https://img.shields.io/badge/stars-212-blue)
      • gowl - Gowl is a process management and process monitoring tool at once. An infinite worker pool gives you the ability to control the pool and processes and monitor their status. ![stars](https://img.shields.io/badge/stars-70-blue)
  • Go Tools

    • Routers

      • decouple - Find “overspecified” function parameters that could be generalized with interface types. ![stars](https://img.shields.io/badge/stars-26-blue)