Skip to content

All-in-one collection for Go algos / datastructures / design patterns

Notifications You must be signed in to change notification settings

gophersgang/go-patterns-all

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go-Patterns-All-Inclusive: meta-collection of repos for Go patterns

A handy reference of common idioms and patterns for algorithms, design patterns, datastructures. The main purpose is reading / learning / teaching.

Background

Setup

$ make run

Update Readme with current stats

$ make crawl

Navigation

Projects

  • aandryashin/init - ---
    ( 2017-02-12 / 8 commits / 0 stars )
  • abcum/cachr - A library of in-memory caching algorithms for Go
    ( 2017-06-15 / 29 commits / 0 stars )
  • abcum/lcp - A longest common prefix library implementation for Go
    ( 2017-11-08 / 16 commits / 0 stars )
  • abcum/ptree - A radix tree library implementation for Go
    ( 2017-12-05 / 34 commits / 0 stars )
  • abcum/tlist - A linked time series list implementation for Go
    ( 2017-11-08 / 57 commits / 0 stars )
  • abcum/vtree - A versioned radix tree library implementation for Go
    ( 2017-12-05 / 35 commits / 0 stars )
  • akresling/jono - A self adjusting worker pool
    ( 2017-01-06 / 2 commits / 0 stars )
  • alexandergrom/componenta - Go наброски
    ( 2017-10-24 / 29 commits / 1 stars )
  • alexandergrom/go-patterns - Design patterns in Golang
    ( 2017-11-01 / 25 commits / 41 stars )
  • alioygur/is - Micro check library in Golang.
    ( 2017-02-13 / 24 commits / 7 stars )
  • arnauddri/algorithms - Algorithms & Data Structures in Go
    ( 2015-02-02 / 134 commits / 158 stars )
  • aurelien-rainone/go-rquad - State of the art point location and neighbour finding algorithms for region quadtrees, in Go
    ( 2017-06-18 / 294 commits / 2 stars )
  • bsm/histogram - Streamining histograms in Go
    ( 2017-08-31 / 10 commits / 0 stars )
  • clarkduvall/hyperloglog - HyperLogLog and HyperLogLog++ implementation in Go/Golang.
    ( 2017-11-27 / 44 commits / 35 stars )
  • code-hex/retrygroup - Package retrygroup provides synchronization, Context cancelation for groups of retry goroutines working on subtasks of a common task.
    ( 2017-02-20 / 3 commits / 1 stars )
  • codingsince1985/checksum - Message digest for large files in Go
    ( 2017-10-25 / 21 commits / 4 stars )
  • codingsince1985/uva - UVa Online Judge solutions in Go
    ( 2017-12-08 / 904 commits / 15 stars )
  • dagoof/gibb - Message broadcasting pattern for go. In order, no messages dropped, and no backup for slow receivers.
    ( 2016-02-28 / 11 commits / 1 stars )
  • davecheney/high-performance-go-workshop - ---
    ( 2016-12-25 / 51 commits / 34 stars )
  • dc0d/rop - Minimal Railway Oriented Programming for Go
    ( 2017-06-02 / 12 commits / 2 stars )
  • dc0d/workerpool - A workerpool that can get expanded & shrink dynamically.
    ( 2017-05-03 / 21 commits / 4 stars )
  • deckarep/golang-set - A simple set type for the Go language. Also used in Docker.
    ( 2017-10-13 / 113 commits / 78 stars )
  • dgryski/go-frugal - Frugal Streaming Quantiles
    ( 2014-07-07 / 11 commits / 2 stars )
  • dgryski/go-perfbook - Thoughts on Go performance optimization
    ( 2017-04-25 / 30 commits / 15 stars )
  • djherbis/buffer - Composable Buffers for Go #golang
    ( 2017-04-10 / 201 commits / 19 stars )
  • eapache/go-resiliency - Resiliency patterns for golang
    ( 2017-06-07 / 46 commits / 41 stars )
  • efischer19/golang_ctci - Working my way through cracking the coding interview in Go, because I want to learn it
    ( 2015-06-12 / 43 commits / 0 stars )
  • emirpasic/gods - GoDS (Go Data Structures). Containers (Sets, Lists, Stacks, Maps, Trees), Sets (HashSet, TreeSet), Lists (ArrayList, SinglyLinkedList, DoublyLinkedList), Stacks (LinkedListStack, ArrayStack), Maps (HashMap, TreeMap, HashBidiMap, TreeBidiMap), Trees (RedBlackTree, AVLTree, BTree, BinaryHeap), Comparators, Iterators, Enumerables, Sort, JSON
    ( 2017-10-13 / 271 commits / 302 stars )
  • etcinit/radio - Broadcast messages to multiple Go channels
    ( 2015-05-09 / 7 commits / 0 stars )
  • exercism/xgo - Exercism exercises in Go.
    ( 2017-12-08 / 1,349 commits / 140 stars )
  • f2prateek/semaphore - ---
    ( 2016-05-01 / 6 commits / 0 stars )
  • f483/dejavu - Quickly detect already witnessed data.
    ( 2017-07-16 / 49 commits / 5 stars )
  • faildep/faildep - a basic library implements common dependence resource failure handling in Go~
    ( 2016-08-05 / 17 commits / 0 stars )
  • feyeleanor/gospeed - Go micro-benchmarks for calculating the speed of language constructs
    ( 2016-01-27 / 26 commits / 6 stars )
  • ghthor/iprep - Interview prep question solutions
    ( 2016-08-26 / 22 commits / 0 stars )
  • gitchander/bufqueue - Buffered Message Queue
    ( 2017-03-20 / 2 commits / 0 stars )
  • glycerine/bchan - golang lib for broadcast channels
    ( 2017-02-10 / 8 commits / 0 stars )
  • glycerine/idem - idem.Halter: a pattern for halting goroutines in Go
    ( 2017-08-14 / 4 commits / 0 stars )
  • glycerine/offheap - an off-heap hash-table in Go. Used to be called go-offheap-hashtable, but we shortened it.
    ( 2017-01-23 / 92 commits / 9 stars )
  • go-cmd/cmd - Async Go os/exec.Cmd with real-time output and status
    ( 2017-06-17 / 10 commits / 7 stars )
  • go-cmd/run - Strategies for running commands with a uniform interface
    ( 2017-03-10 / 6 commits / 0 stars )
  • go-pipe/pipe - Package pipe implements unix-like pipelines for Go.
    ( 2014-04-14 / 27 commits / 13 stars )
  • golang/sync - [mirror] concurrency primitives
    ( 2017-11-01 / 19 commits / 21 stars )
  • gophergala/go-algos - ---
    ( 2017-04-18 / 44 commits / 10 stars )
  • gophersgang/golang-patterns-collection - clone of http://www.golangpatterns.info/concurrency/coroutines
    ( 2017-03-06 / 2 commits / 0 stars )
  • gophersgang/ways-to-do-things - different ways to model actors in Golang
    ( 2017-03-22 / 4 commits / 0 stars )
  • hashicorp/golang-lru - Golang LRU cache
    ( 2016-08-13 / 63 commits / 98 stars )
  • imdario/mergo - Mergo: merging Go structs and maps since 2013.
    ( 2017-10-09 / 96 commits / 74 stars )
  • jbuberel/go-patterns - ---
    ( 2016-04-27 / 19 commits / 37 stars )
  • joernweissenborn/eventual2go - Streams and Futures for Go.
    ( 2017-11-27 / 107 commits / 0 stars )
  • joeshaw/cuckoofilter - An implementation of Cuckoo Filters in Go
    ( 2016-08-01 / 4 commits / 2 stars )
  • jpillora/backoff - Simple backoff algorithm in Go (golang)
    ( 2017-09-18 / 24 commits / 27 stars )
  • kai101/programming-reference-quiz - A collection of various programming reference and quiz question and solution in various language.
    ( 2017-04-29 / 20 commits / 0 stars )
  • kamranahmedse/design-patterns-for-humans - Design Patterns for Humans™ - An ultra-simplified explanation
    ( 2017-11-15 / 121 commits / 1,491 stars )
  • lafikl/liblb - A golang library that implements load balancing algorithms.
    ( 2017-07-02 / 42 commits / 10 stars )
  • lnsp/gohash - Fast and easy tool to generate file hashes.
    ( 2016-08-19 / 6 commits / 0 stars )
  • logpacker/go-questions - Questions to estimate your Go level
    ( 2017-10-29 / 27 commits / 5 stars )
  • mailgun/callqueue - Serialized call queues
    ( 2015-02-11 / 3 commits / 0 stars )
  • mailgun/holster - A place to keep useful golang functions and small libraries
    ( 2017-12-01 / 56 commits / 4 stars )
  • mattkanwisher/microservices-book-code - Source code to the book Microservices in GO www.microservicesingo.com
    ( 2015-08-14 / 2 commits / 10 stars )
  • mmcgrana/gobyexample - Go by Example
    ( 2016-12-27 / 807 commits / 482 stars )
  • monochromegane/go_design_pattern - Design patterns in Golang.
    ( 2017-08-25 / 38 commits / 121 stars )
  • moul/euler - 🎲 Project Euler in Golang
    ( 2017-06-17 / 65 commits / 0 stars )
  • mrekucci/epi - Solutions for Elements of Programming Interviews problems written in Golang (work-in-progress)
    ( 2016-07-23 / 285 commits / 15 stars )
  • nanxiao/golang-101-hacks - A rudimentary Go tutorial.
    ( 2016-09-30 / 96 commits / 14 stars )
  • nieksand/sortgenerics - Overhead of Go's generic sort
    ( 2016-09-29 / 17 commits / 0 stars )
  • nytlabs/gojsonexplode - a go library to flatten nested JSON
    ( 2016-02-01 / 18 commits / 8 stars )
  • orcaman/concurrent-map - a thread-safe concurrent map for go
    ( 2017-10-24 / 92 commits / 120 stars )
  • orcaman/financial - think numpy's financial (npv, irr, etc.) but in go
    ( 2017-06-09 / 29 commits / 5 stars )
  • peterbourgon/go-training - Exercises
    ( 2016-02-26 / 6 commits / 1 stars )
  • picadoh/gostreamer - Go example that uses channels to build an execution pipeline
    ( 2016-10-05 / 29 commits / 7 stars )
  • pierrec/xxhash - Pure Go implementation of xxHash (32 and 64 bits versions)
    ( 2017-07-14 / 19 commits / 9 stars )
  • puerkitobio/gocostmodel - Benchmarks of common basic operations for the Go language.
    ( 2015-01-04 / 26 commits / 2 stars )
  • qkraudghgh/algorithms - Minimal examples of data structures and algorithms in Golang
    ( 2017-05-12 / 9 commits / 6 stars )
  • rakyll/coop - Cheat sheet for some of the common concurrent flows in Go
    ( 2015-10-06 / 20 commits / 47 stars )
  • rubyist/circuitbreaker - Circuit Breakers in Go
    ( 2017-03-30 / 113 commits / 46 stars )
  • seiflotfy/loglogbeta - LogLog based Cardinality Estimator
    ( 2017-11-14 / 25 commits / 4 stars )
  • sentimensrg/sigctx - Go contexts for graceful shutdown
    ( 2017-10-03 / 5 commits / 1 stars )
  • serdmanczyk/bifrost - Golang query-able job queue
    ( 2017-09-20 / 13 commits / 1 stars )
  • serialx/hashring - Consistent hashing "hashring" implementation in golang (using the same algorithm as libketama)
    ( 2017-06-14 / 29 commits / 44 stars )
  • spatially/go-workgroup - wraps sync.WaitGroup
    ( 2015-10-01 / 16 commits / 6 stars )
  • steeve/broadcaster - Broadcast (one to many, fanout) messaging with payloads for Go
    ( 2015-05-14 / 4 commits / 1 stars )
  • stefanschroeder/golang-regex-tutorial - Golang - Regular Expression Tutorial
    ( 2017-10-18 / 98 commits / 89 stars )
  • streadway/quantile - Space efficient streaming quantile estimator
    ( 2015-09-17 / 26 commits / 3 stars )
  • sunfmin/fanout - Fanout - make writing parallel code even easier
    ( 2017-11-03 / 23 commits / 27 stars )
  • svett/golang-design-patterns - A Gang of Gophers (originally Gang of Four) design patterns written in Golang
    ( 2016-05-15 / 22 commits / 16 stars )
  • thejerf/suture - Supervisor trees for Go.
    ( 2017-10-23 / 41 commits / 28 stars )
  • timtadh/fs2 - B+ Tree - List - File Structures 2 - Memory Mapped File Structures for Go
    ( 2016-08-04 / 193 commits / 11 stars )
  • tjarratt/go-best-practices - A collection of best practices for writing web apps in Go
    ( 2016-07-29 / 16 commits / 6 stars )
  • tmrts/go-patterns - Curated list of Go design patterns, recipes and idioms
    ( 2017-07-19 / 72 commits / 307 stars )
  • tsenart/tb - A generic lock-free implementation of the "Token-Bucket" algorithm
    ( 2015-12-08 / 62 commits / 12 stars )
  • twotwotwo/sorts - Parallel and radix sorting in Go
    ( 2016-08-14 / 43 commits / 5 stars )
  • udhos/golang-concurrency-tricks - Golang concurrency model based on goroutines and channels is not free from sharp edges.
    ( 2016-05-05 / 4 commits / 0 stars )
  • ungerik/go-dry - DRY (don't repeat yourself) package for Go
    ( 2017-09-12 / 107 commits / 26 stars )
  • vladimirvivien/go-cshared-examples - Calling Go Functions from Other Languages using C Shared Libraries
    ( 2017-06-19 / 18 commits / 11 stars )
  • vladimirvivien/learning-go - Source code repository for my book "Learning Go Programming"
    ( 2017-09-28 / 31 commits / 23 stars )
  • workiva/go-datastructures - ---
    ( 2017-12-01 / 647 commits / 376 stars )
  • xlab/closer - Package closer ensures a clean exit for your Go app.
    ( 2016-11-13 / 12 commits / 2 stars )
  • yksz/go-design-patterns - Design patterns implemented with Golang
    ( 2017-11-01 / 40 commits / 23 stars )
  • zhenjl/encoding - Integer Compression Libraries for Go
    ( 2014-09-05 / 71 commits / 9 stars )
  • zhenjl/ringbuffer - Disruptor style ring buffer in Go
    ( 2013-12-02 / 9 commits / 9 stars )

By Activity

By size

Links

About

All-in-one collection for Go algos / datastructures / design patterns

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages