3 Gooseberry: Common Packages for Microservices

github.com godoc.org goreportcard.com posted by Mohamed El-Geish 2427 days ago  

Gooseberry is a collection of common Go packages that Voicera uses in microservices.

It's an incomplete library, named after a fruit that looks like an ungrown clementine.

We'd like to build gooseberry to be like Guava is for Java.

## Features

* REST clients, web client with logging, basic auth support, etc.

* Container structs like immutable maps, priority queues, sets, etc.

* Error aggregation (multiple errors into one with a header message)

* Leveled logger with a prefix and a wrapper for [zap](go.uber.org/zap)

* Polling with an exponential backoff and a Bernoulli trials for resetting

* Uniform Resource Name struct that implements [RFC8141](https://tools.ietf.org/html/rfc8141)

## Quick Start

To get the latest version: `go get -u github.com/voicera/gooseberry`

Register to comment or vote on this story