Documentation
¶
Overview ¶
Package pkg provides a public collection of development resources and utilities.
Contents on this package are to be considered under heavy development. This means interfaces (APIs) may change at any time, sometimes dramatically so.
Directories
¶
Path | Synopsis |
---|---|
Package amqp simplify working with an "Advanced Message Queue Protocol" based broker.
|
Package amqp simplify working with an "Advanced Message Queue Protocol" based broker. |
Package cli contains utilities for "Command Line Interface" applications.
|
Package cli contains utilities for "Command Line Interface" applications. |
konf
Package konf provides utilities to work with `github.com/nil-go/konf`
|
Package konf provides utilities to work with `github.com/nil-go/konf` |
shell
Package shell provides an interactive client for CLI-based applications.
|
Package shell provides an interactive client for CLI-based applications. |
viper
Package viper provides utilities to work with `github.com/spf13/viper`
|
Package viper provides utilities to work with `github.com/spf13/viper` |
crypto
|
|
ed25519
Package ed25519 provides a EdDSA (Edwards-curve Digital Signature Algorithm) handler for Curve25519.
|
Package ed25519 provides a EdDSA (Edwards-curve Digital Signature Algorithm) handler for Curve25519. |
pow
Package pow provides an implementation of the Proof-of-Work algorithm.
|
Package pow provides an implementation of the Proof-of-Work algorithm. |
shamir
Package shamir provides a simple implementation for the Shamir's Secret Sharing algorithm.
|
Package shamir provides a simple implementation for the Shamir's Secret Sharing algorithm. |
tred
Package tred provides a reference implementation for the Tamper Resistant Encrypted Data protocol.
|
Package tred provides a reference implementation for the Tamper Resistant Encrypted Data protocol. |
x25519
Package x25519 provides a ECDH (Elliptic Curve Diffie-Hellman) wrapper for curve X25519.
|
Package x25519 provides a ECDH (Elliptic Curve Diffie-Hellman) wrapper for curve X25519. |
Package did provides a reference implementation for the "Decentralized Identifiers" W3C community standard.
|
Package did provides a reference implementation for the "Decentralized Identifiers" W3C community standard. |
resolver
Package resolver provides a "DIF Universal Resolver" handler and driver implementation.
|
Package resolver provides a "DIF Universal Resolver" handler and driver implementation. |
Package errors provides an enhanced error management library.
|
Package errors provides an enhanced error management library. |
Package internal groups helpers and private utilities used by several sub-packages.
|
Package internal groups helpers and private utilities used by several sub-packages. |
crypto
Package crypto provides private utilities used by several crypto sub-packages.
|
Package crypto provides private utilities used by several crypto sub-packages. |
json
Package json provides private utilities when working with JSON data.
|
Package json provides private utilities when working with JSON data. |
jose
|
|
amr
Package amr provides "Authentication Method Reference" values as described by the RFC-8176.
|
Package amr provides "Authentication Method Reference" values as described by the RFC-8176. |
jwa
Package jwa provides cryptographic algorithm identifiers as described by RFC-7518.
|
Package jwa provides cryptographic algorithm identifiers as described by RFC-7518. |
jwk
Package jwk implements JSON Web Key as described in RFC-7517.
|
Package jwk implements JSON Web Key as described in RFC-7517. |
jwt
Package jwt provides a JSON Web Token (JWT) implementation as specified by RFC-7519.
|
Package jwt provides a JSON Web Token (JWT) implementation as specified by RFC-7519. |
Package log provide reusable components to support structured and leveled logging.
|
Package log provide reusable components to support structured and leveled logging. |
Package metadata provides simple data management tools commonly used by other utilities.
|
Package metadata provides simple data management tools commonly used by other utilities. |
net
|
|
csp
Package csp provides an easy-to-use "Content Security Policy" implementation.
|
Package csp provides an easy-to-use "Content Security Policy" implementation. |
drpc
Package drpc provides a drop-in, lightweight gRPC replacement.
|
Package drpc provides a drop-in, lightweight gRPC replacement. |
drpc/middleware/client
Package client provides common extensions (middleware) required for production DRPC clients.
|
Package client provides common extensions (middleware) required for production DRPC clients. |
drpc/middleware/server
Package server provides common extensions (middleware) required for production DRPC servers.
|
Package server provides common extensions (middleware) required for production DRPC servers. |
drpc/ws
Package ws provides a WebSocket proxy with support for bidirectional streaming on DRPC servers.
|
Package ws provides a WebSocket proxy with support for bidirectional streaming on DRPC servers. |
http
Package http provide common utilities when deploying a production HTTP(S) service.
|
Package http provide common utilities when deploying a production HTTP(S) service. |
middleware
Package middleware provides common extensions required for production HTTP applications.
|
Package middleware provides common extensions required for production HTTP applications. |
middleware/cors
Package cors provides a "Cross Origin Resource Sharing" middleware.
|
Package cors provides a "Cross Origin Resource Sharing" middleware. |
middleware/gzip
Package gzip provides data compression of HTTP responses for clients that support it.
|
Package gzip provides data compression of HTTP responses for clients that support it. |
middleware/headers
Package headers provides a middleware to add HTTP headers to all generated responses.
|
Package headers provides a middleware to add HTTP headers to all generated responses. |
middleware/hsts
Package hsts provides a HTTP Strict Transport Security middleware implementation.
|
Package hsts provides a HTTP Strict Transport Security middleware implementation. |
middleware/logging
Package logging generates flexible logs from processed HTTP requests.
|
Package logging generates flexible logs from processed HTTP requests. |
middleware/metadata
Package metadata allows to set/get additional context details from/on HTTP requests.
|
Package metadata allows to set/get additional context details from/on HTTP requests. |
middleware/proxy
Package proxy adjust values managed by reverse proxy headers on incoming HTTP requests.
|
Package proxy adjust values managed by reverse proxy headers on incoming HTTP requests. |
middleware/rate
Package rate provides a rate limiter middleware based on a "token bucket" implementation.
|
Package rate provides a rate limiter middleware based on a "token bucket" implementation. |
middleware/recovery
Package recovery allows an HTTP server to recover from unhandled panic events.
|
Package recovery allows an HTTP server to recover from unhandled panic events. |
rpc
Package rpc provides a utilities and components to easily deploy a robust RPC network service.
|
Package rpc provides a utilities and components to easily deploy a robust RPC network service. |
rpc/ws
Package ws provides a WebSocket proxy with support for bidirectional streaming.
|
Package ws provides a WebSocket proxy with support for bidirectional streaming. |
sse
Package sse provides a "Server-Send Events" server/client implementation.
|
Package sse provides a "Server-Send Events" server/client implementation. |
Package otel provides OpenTelemetry instrumentation utilities for Go applications and libraries.
|
Package otel provides OpenTelemetry instrumentation utilities for Go applications and libraries. |
api
Package api provides the utilities necessary to instrument an application or library.
|
Package api provides the utilities necessary to instrument an application or library. |
gorm
Package gorm provides an OpenTelemetry instrumentation for the GORM library.
|
Package gorm provides an OpenTelemetry instrumentation for the GORM library. |
grpc
Package otelgrpc provide instrumentation primitives for gRPC clients and servers.
|
Package otelgrpc provide instrumentation primitives for gRPC clients and servers. |
http
Package otelhttp provide utilities to instrument HTTP clients and servers based on Go's net/http package.
|
Package otelhttp provide utilities to instrument HTTP clients and servers based on Go's net/http package. |
mongodb
Package mongodb provides OTEL instrumentation for the MongoDB Go Driver.
|
Package mongodb provides OTEL instrumentation for the MongoDB Go Driver. |
prometheus
Package prometheus provides utilities to collect and consume metrics (instrumentation data).
|
Package prometheus provides utilities to collect and consume metrics (instrumentation data). |
sdk
Package sdk provides the utilities necessary to setup a monitoring implementation at runtime.
|
Package sdk provides the utilities necessary to setup a monitoring implementation at runtime. |
sentry
Package sentry provides an OpenTelemetry exporter for Sentry.
|
Package sentry provides an OpenTelemetry exporter for Sentry. |
temporal
Package temporal provides OTEL instrumentation for Temporal workflows.
|
Package temporal provides OTEL instrumentation for Temporal workflows. |
proto
|
|
sample/v1
Package samplev1 provides sample Protocol Buffer definitions for dummy services.
|
Package samplev1 provides sample Protocol Buffer definitions for dummy services. |
storage
|
|
orm
Package orm provides a simple "Object-Relational Mapping" style library for MongoDB.
|
Package orm provides a simple "Object-Relational Mapping" style library for MongoDB. |
Package ulid provides a Universally Unique Lexicographically Sortable Identifier implementation.
|
Package ulid provides a Universally Unique Lexicographically Sortable Identifier implementation. |
Click to show internal directories.
Click to hide internal directories.