Package cienv
implements some helper functions to use during tests. Many times certain facilities are not available, or tests must run differently.
This package is toml parser and encoder for Go. The interface is similar to Go's standard library json
and xml
package.
This package provides an easy way of parsing and manipulating struct tag fields. Please vendor the library as it might change in future versions.
Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support.
This package is a simple tracing application that logs messages depending on environment variables. It is very much inspired by git's GIT_TRACE mechanism.
This package provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support.
This library converts ANSI escape sequences to Windows API calls on Windows environment. You can easily use this feature by replacing fmt with ansi.
Package imohash implements a fast, constant-time hash for files. It is based atop murmurhash3 and uses file size and sample data to construct the hash.
websspi
is an HTTP middleware for Golang that uses Kerberos/NTLM for single sign-on (SSO) authentication of browser based clients in a Windows environment.
Package testfs provides a simple fs.FS
which is contained in a test (using testing.TB's TempDir
) and with a few helper methods.
Package vfsgen
takes an http.FileSystem
(likely at go generate
time) and generates Go code that statically implements the provided http.FileSystem
.
This package provides isatty
, a Go module that can tell you whether a file descriptor points to a terminal and the type of the terminal.
This package provides functionlaity for common tasks:
Bytes
- format/parse bytesColor
- style terminal textLog
- simple logging
This package provides an implementation of the Alphanum Algorithm developed by Dave Koelle in Go.
go-github-com-klauspost-pgzip
implements reading and writing of gzip format compressed files, as specified in RFC 1952.
This project houses, what I consider to be some help packages for writing Go applications. Your mileage may vary, but I find them to be pretty darn helpful.
This package provides a simple little tool that produces readable diff of 2 JSON-able and convertible to map[string]interface
objects. Useful for diagnostics or debugging
Package urlpath matches paths against a template. It's meant for applications that take in REST-like URL paths, and need to validate and extract data from those paths.
This is a native Go implementation of the xxHash algorithm, an extremely fast non-cryptographic hash algorithm, working at speeds close to RAM limits.
go-github-com-c4milo-unpackit
allows you to easily unpack *.tar.gz, *.tar.bzip2, *.tar.xz, *.zip and *.tar files. CGO is not involved nor hard dependencies of any type.
emacs-git-messenger
provides git-messenger:popup-message
, a function that when called, will popup the last git commit message for the current line. This uses git-blame internally.
The gemini
package implements the Gemini protocol in Go. It provides an API similar to that of NET/HTTP to facilitate the development of Gemini clients and servers.
Osext provides a method for finding the current executable file that is running. This can be used for upgrading the current executable or finding resources located relative to the executable file.
Package snaker provides methods to convert CamelCase names to snake_case and back. It considers the list of allowed initialsms used by github.com/golang/lint/golint (e.g. ID or HTTP)