This package provides a Golang implementation of the SRP protocol, used for authentication of ProtonMail users.
Package negroni is an idiomatic approach to web middleware in Go. It is tiny,non-intrusive, and encourages use of net/http Handlers.
Regexp2 is a feature-rich RegExp engine for Go. This package is a fork of dlclark/regexp2 providing a more similar API to regexp.
This package provides a multi-progress bar for Go command-line applications. It supports multiple progress bars, customizable decorators, and dynamic bar addition/removal.
This package provides a cross-platform facility for creating temporary files that are automatically cleaned up (even in the event of an unexpected process exit).
Package stringprep provides data tables and algorithms for RFC-3454, including errata. It also provides a profile for SASLprep as defined in RFC-4013.
go-redis is the official Redis client library for the Go programming language. It offers a straightforward interface for interacting with Redis servers.
Package xxhash implements the 64-bit variant of xxHash (XXH64) as described at http://cyan4973.github.io/xxHash/.
Httpsnoop provides an easy way to capture http related metrics (i.e. response time, bytes written, and http status code) from your application's http.Handlers.
Go Windows Service wrapper compatible with GNU/Linux. Windows tests here.
Package watchdog runs a singleton memory watchdog in the process, which watches memory utilization and forces Go GC in accordance with a user-defined policy.
This package implements the pseudo-random-function (PRF) HighwayHash. HighwayHash is a fast hash function designed to defend hash-flooding attacks or to authenticate short-lived messages.
This project is part of the GoActivityPub library which helps with creating ActivityPub applications using the Go programming language.
Spintax is an text generator from Spintax template. Spintax is an template with alternative parts that can be evaluated into one of many texts. Depth is not limited
This package provides functions for converting between Julian days and Go time.Time values. Julian days are used by SQLite and other databases for date/time storage.
Package knownhosts is a thin wrapper around golang.org/x/crypto/ssh/knownhosts, adding the ability to obtain the list of host key algorithms for a known host.
GoJay is a performant JSON encoder/decoder for Golang. It has a simple API and doesn't use reflection. It relies on small interfaces to decode/encode structures and slices.
Package name implements various naming conventions. The two categories are delimiter-separated and letter case-separated words. Each of the formatting functions support both techniques for input, without any context.
This package implements a goroutine pool with fixed capacity, managing and recycling a massive number of goroutines, allowing developers to limit the number of goroutines in your concurrent programs.
Package flatfs is a Datastore implementation that stores all objects in a two-level directory structure in the local file system, regardless of the hierarchy of the keys.
Native Go implementation of Austin Appleby's third MurmurHash revision (aka MurmurHash3). Reference algorithm has been slightly hacked as to support the streaming mode required by Go's standard Hash interface.
Sigstore is a Go library providing common functionality for Sigstore services. It includes cryptographic utilities, OAuth/OIDC authentication, certificate handling, and tools for interacting with Sigstore infrastructure like Fulcio and Rekor.
jsoncolor is a drop-in replacement for encoding/json's Marshal and MarshalIndent functions and Encoder type which produce colorized output using github.com/fatih/color.