A collection of high-performance, modular utilities for enhancing testing,
transactional consistency, efficiency, security, and stability in cloud-native
Go applications.
Module Features
assert: Provides tools for testing, including utility functions
to assert value equality and simplify debugging during development.
consistency: Implements transactional log management with
Event and EventType abstractions, and supports file-based persistence using
JsonFileLogger for reliable data storage.
efficiency: Offers utilities for generating read-only
channels, merging and splitting streams, concurrent processing of channel items,
and partitioning key-value stores using shards for scalability and performance.
extensibility: Dynamically load external Go plugins using
LoadPlugin. Just provide a symbol name (e.g., a function) to integrate new
features on-the-fly—no rebuilds or redeploys required.
security: Includes encryption and decryption with AES-GCM,
secure key generation, HMAC hashing, bcrypt-based password handling, and a
preconfigured secure HTTP(S) server with liveness and readiness probes for
robust application security.
service: Enhances service orchestration by grouping related
functionality, wrapping functions to support context-aware execution and add
lifecycle-oriented functionality like signal handling in cloud-native
environments.
stability: Ensures service robustness with mechanisms like
circuit breakers, retries for transient failures, throttling for rate limiting,
debounce for execution control, and timeouts for enforcing execution limits.
templating: Provides an Engine for managing templates
stored in an embedded filesystem. Use Parse to load multiple templates (via
glob patterns), and Render to execute them with custom data.