This package provides utilities for loading, compiling, and debugging eBPF programs. It has minimal external dependencies and is intended to be used in long running processes.
Package color is an ANSI color package to output colorized or SGR defined output to the standard output. The API can be used in several way, pick one that suits you.
Viper is a complete configuration solution for Go applications including 12-Factor apps. It is designed to work within an application, and can handle all types of configuration needs and formats.
Implementation in Go of the CID spec. It is used in go-ipfs and related packages to refer to a typed hunk of data.
OjG is a high performance parser with a variety of additional JSON tools. OjG is optimized to processing huge data sets where data does not necessarily conform to a fixed structure.
This package implements a fast bloom filter with real bitset and JSONMarshal/JSONUnmarshal to store/reload the Bloom filter. It's an alternative fork of https://github.com/gxed/bbloom.
gomock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other contexts too.
go-log wraps zap to provide a logging facade. go-log manages logging instances and allows for their levels to be controlled individually.
This package is a request router and dispatcher with a pat-like interface. It is an alternative to gorilla/mux that showcases how it can be used as a base for different API flavors.
noise implements the Noise protocol framework. Noise is a low-level framework for building crypto protocols. Noise protocols support mutual and optional authentication, identity hiding, forward secrecy, zero round-trip encryption, and other advanced features.
This package is a drop in replacement for the built-in Go log package. All the functionality of the built-in package still exists and is unchanged. This package contains a series of small enhancements and additions.
The uniseg package provides a tool to iterate over grapheme clusters. This may be used to determine the number of user-perceived characters, to split strings in their intended places, or to extract individual characters which form a unit.
This package provides a library for embedding human-meaningful graphics in QR codes. However, instead of scribbling on redundant pieces and relying on error correction to preserve the meaning, qart engineers the encoded values to create the picture in a code with no inherent errors.
Bolt is a pure Go key/value store inspired by Howard Chu's LMDB project. The goal of the project is to provide a simple, fast, and reliable database for projects that don't require a full database server such as Postgres or MySQL.
lz4 provides a streaming interface to LZ4 data streams as well as low level compress and uncompress functions for LZ4 data blocks. The implementation is based on the reference C one.
Package ssh wraps the crypto/ssh package with a higher-level API for building SSH servers. The goal of the API was to make it as simple as using net/http, so the API is very similar. It's alternative fork of https://github.com/gliderlabs/ssh.
Pflag is library to replace Go's flag package. It implements POSIX/GNU-style command-line options with double hyphens. It is is compatible with the GNU extensions to the POSIX recommendations for command-line options.
Package status implements errors returned by gRPC. These errors are serialized and transmitted on the wire between server and client, and allow for additional data to be transmitted via the Details field in the status proto. gRPC service handlers should return an error created by this package, and gRPC clients should expect a corresponding error to be returned from the RPC call.
Tengo is a small, dynamic, fast, secure script language for Go. Features:
simple and highly readable syntax
dynamic typing with type coercion
higher-order functions and closures
immutable values
securely embeddable and extensible
compiler/runtime written in native Go (no external deps or cgo)
executable as a standalone language/REPL
use cases: rules engine, state machine, data pipeline, transpiler
Goja is an implementation of ECMAScript 5.1 in pure Go with emphasis on standard compliance and performance, it was largely inspired by otto.
Features:
Full ECMAScript 5.1 support (including regex and strict mode).
Passes nearly all tc39 tests for the features implemented so far.
Capable of running Babel, TypeScript compiler and pretty much anything written in ES5.
Sourcemaps.