pkg/

directory
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2026 License: Apache-2.0

Directories

Path Synopsis
Package authz defines PlatformKit's provider-neutral authorization contract.
Package authz defines PlatformKit's provider-neutral authorization contract.
Package entity defines provider-neutral entity descriptors for PlatformKit.
Package entity defines provider-neutral entity descriptors for PlatformKit.
crud
Package crud — crud.go owns the public surface of the generic CRUD handler block: the Store[T] persistence contract, the ListFilter query shape, the sentinel error values, the Options[T] configuration struct, and the Handler[T] type with its New constructor and Mount method.
Package crud — crud.go owns the public surface of the generic CRUD handler block: the Store[T] persistence contract, the ListFilter query shape, the sentinel error values, the Options[T] configuration struct, and the Handler[T] type with its New constructor and Mount method.
Package event defines the provider-neutral event-bus contract for the PlatformKit OSS kernel: the Envelope value type that carries event metadata, the Handler callable that processes deliveries, the Subscription handle that owns a registration, and the Bus interface that publishers and subscribers depend on.
Package event defines the provider-neutral event-bus contract for the PlatformKit OSS kernel: the Envelope value type that carries event metadata, the Handler callable that processes deliveries, the Subscription handle that owns a registration, and the Bus interface that publishers and subscribers depend on.
memory
Package memory ships the in-process event.Bus implementation: a fan-out publisher that holds subscriptions in a map under sync.RWMutex and delivers envelopes either synchronously on the publisher's goroutine (default) or asynchronously through a bounded worker pool (WithAsync).
Package memory ships the in-process event.Bus implementation: a fan-out publisher that holds subscriptions in a map under sync.RWMutex and delivers envelopes either synchronously on the publisher's goroutine (default) or asynchronously through a bounded worker pool (WithAsync).
outbox
Package outbox ships the durable transactional outbox primitive for the PlatformKit event bus: Publish writes envelopes to a Store first, then a background dispatcher reads claimed entries and forwards them to an inner event.Bus, marking each entry delivered or failed.
Package outbox ships the durable transactional outbox primitive for the PlatformKit event bus: Publish writes envelopes to a Store first, then a background dispatcher reads claimed entries and forwards them to an inner event.Bus, marking each entry delivered or failed.
infrastructure
cache
Package cache — cache.go owns the public surface of the cache contract: the Cache interface that every implementation satisfies, the Memory constructor + MemoryOption functional-option type, and the option constructors (WithMaxEntries, WithSweepInterval).
Package cache — cache.go owns the public surface of the cache contract: the Cache interface that every implementation satisfies, the Memory constructor + MemoryOption functional-option type, and the option constructors (WithMaxEntries, WithSweepInterval).
config
Package config — config.go owns the public surface of the config contract: the Config struct + nested HTTP/Database/Cache sections, the DefaultConfig constructor, the LoadFromJSON loader, the LoadFromEnv environment overlay, and the Validate normalizer.
Package config — config.go owns the public surface of the config contract: the Config struct + nested HTTP/Database/Cache sections, the DefaultConfig constructor, the LoadFromJSON loader, the LoadFromEnv environment overlay, and the Validate normalizer.
database
Package database — database.go owns the public surface of the database wrapper: the Database interface, the Open constructor, the Option type, and the pool-tuning option constructors.
Package database — database.go owns the public surface of the database wrapper: the Database interface, the Open constructor, the Option type, and the pool-tuning option constructors.
router
Package router defines the provider-neutral HTTP router contract for the PlatformKit OSS kernel and ships a stdlib net/http.ServeMux default that exploits the Go 1.22+ method+pattern syntax.
Package router defines the provider-neutral HTTP router contract for the PlatformKit OSS kernel and ships a stdlib net/http.ServeMux default that exploits the Go 1.22+ method+pattern syntax.
Package module provides the minimal public PlatformKit module composition framework.
Package module provides the minimal public PlatformKit module composition framework.
Package mutation defines the core governed-mutation contract.
Package mutation defines the core governed-mutation contract.
Package observability defines PlatformKit's provider-neutral observability contracts: logger, metrics, tracing, health, and guardrail.
Package observability defines PlatformKit's provider-neutral observability contracts: logger, metrics, tracing, health, and guardrail.
guardrail
Package guardrail emits standardized warnings when PlatformKit takes a fallback or degraded path.
Package guardrail emits standardized warnings when PlatformKit takes a fallback or degraded path.
health
Package health defines the PlatformKit OSS health-check contract.
Package health defines the PlatformKit OSS health-check contract.
logger
Package logger defines the PlatformKit OSS structured logger contract.
Package logger defines the PlatformKit OSS structured logger contract.
metrics
Package metrics defines the PlatformKit OSS metrics contract.
Package metrics defines the PlatformKit OSS metrics contract.
tracing
Package tracing defines the PlatformKit OSS tracing contract.
Package tracing defines the PlatformKit OSS tracing contract.
Package resilience groups PlatformKit's fault-tolerance primitives.
Package resilience groups PlatformKit's fault-tolerance primitives.
bulkhead
Package bulkhead — bulkhead.go owns the entire public surface: the ErrFull sentinel, the Config struct, the Bulkhead interface, the New constructor, and the default semaphore implementation that backs them.
Package bulkhead — bulkhead.go owns the entire public surface: the ErrFull sentinel, the Config struct, the Bulkhead interface, the New constructor, and the default semaphore implementation that backs them.
circuitbreaker
Package circuitbreaker — circuitbreaker.go owns the entire public surface for this primitive: the State enum, the ErrOpen sentinel, the Config struct, the Breaker interface, the New constructor, and the default implementation that backs them.
Package circuitbreaker — circuitbreaker.go owns the entire public surface for this primitive: the State enum, the ErrOpen sentinel, the Config struct, the Breaker interface, the New constructor, and the default implementation that backs them.
retry
Package retry — backoff.go owns the inter-attempt delay calculation: exponential growth from InitialDelay by Multiplier, clamped at MaxDelay, then multiplicative jitter applied symmetrically.
Package retry — backoff.go owns the inter-attempt delay calculation: exponential growth from InitialDelay by Multiplier, clamped at MaxDelay, then multiplicative jitter applied symmetrically.
Package security defines PlatformKit's provider-neutral security primitives.
Package security defines PlatformKit's provider-neutral security primitives.
authn
Package authn — authn.go owns the Options type, the default error writer, and RequireAuth, the baseline middleware that rejects anonymous principals with 401 Unauthorized.
Package authn — authn.go owns the Options type, the default error writer, and RequireAuth, the baseline middleware that rejects anonymous principals with 401 Unauthorized.
authz
Package authz — authz.go owns the Options type, the RequestBuilder interface plus its function adapter, and the Middleware factory that runs an authz.Evaluator against an *http.Request.
Package authz — authz.go owns the Options type, the RequestBuilder interface plus its function adapter, and the Middleware factory that runs an authz.Evaluator against an *http.Request.
cookies
Package cookies — cookies.go owns the Kind enum, the per-Kind profile table, the Settings struct, and the public builder/writer functions (Build, BuildClear, Write, Clear, Name).
Package cookies — cookies.go owns the Kind enum, the per-Kind profile table, the Settings struct, and the public builder/writer functions (Build, BuildClear, Write, Clear, Name).
cors
Package cors — cors.go owns the Config struct and the Middleware factory.
Package cors — cors.go owns the Config struct and the Middleware factory.
csrf
Package csrf — csrf.go owns the Config struct, the Middleware factory, and the double-submit validation/rotation logic.
Package csrf — csrf.go owns the Config struct, the Middleware factory, and the double-submit validation/rotation logic.
headers
Package headers provides HTTP middleware that applies a security-header response policy and attaches a per-request Content-Security-Policy nonce to the request context.
Package headers provides HTTP middleware that applies a security-header response policy and attaches a per-request Content-Security-Policy nonce to the request context.
identity
Package identity — chain.go owns the Chain composition helper.
Package identity — chain.go owns the Chain composition helper.
middlewarepolicy
Package middlewarepolicy — chain.go owns Chain, the associative composer that turns a list of middlewares into a single middleware value whose outermost element is mws[0].
Package middlewarepolicy — chain.go owns Chain, the associative composer that turns a list of middlewares into a single middleware value whose outermost element is mws[0].
passhash
Package passhash — argon2.go provides Argon2idHasher.
Package passhash — argon2.go provides Argon2idHasher.
ratelimit
Package ratelimit provides the Limiter contract, an in-memory TokenBucket implementation, and HTTP middleware that combines them.
Package ratelimit provides the Limiter contract, an in-memory TokenBucket implementation, and HTTP middleware that combines them.
signature
Package signature defines PlatformKit's provider-neutral payload-signing contract and ships an HMAC-SHA256 default implementation.
Package signature defines PlatformKit's provider-neutral payload-signing contract and ships an HMAC-SHA256 default implementation.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL