Darling is a toolkit for Go that aims to provide simple, modular packages that are light abstractions on top of the Go standard libraries. They are built to work well together, but to also fit into your existing codebase, letting you pick and choose what you use.

Darling projects aim to be highly testable, eschewing global, mutable state and utilising interfaces, to make stubbing pieces out simpler. They rely heavily on the standard library, and do their best to avoid external dependencies.

Generally, a package gets added to Darling when we find ourselves rewriting code that matches these descriptions over and over again, though we welcome contributions from the community. Our aim is to provide a ready set of tools for building web services in Go that don't do any magic, aren't particularly clever, but are simple, reliable, and predictable.