A robust collection of enterprise-grade, reusable Go libraries
Documentation •
Installation •
Packages •
Cloud Integrations •
Contributing
Golly is a self-contained toolkit of common utilities for the Go programming language, designed to simplify and enhance enterprise software development. It minimizes external dependencies while providing modular, production-ready libraries for everything from HTTP routing and messaging to GenAI integrations.
Create reusable common collection of utilities targeting enterprise use cases
Ensure the project is self-contained and minimise external dependencies
go get oss.nandlabs.io/golly
Package
Description
assertion
Unified interface for asserting conditions with support for various types
cli
Easy-to-use API for building complex command structures with argument parsing
collections
Generic data structures: Stack, Queue, List, LinkedList, Set (thread-safe)
config
Environment variable helpers and properties file management
errutils
Custom formatted errors and multi-error aggregation
fnutils
Deferred and timed function execution utilities
📡 Networking & Communication
Package
Description
clients
HTTP client with auth providers, retry with backoff, and circuit breaker
rest
HTTP server with routing, middleware, TLS, and transport configuration
turbo
Enterprise-grade HTTP router with path/query params, filters, CORS, and auth middleware
ws
WebSocket client and server (RFC 6455) with auth, retry, circuit breaker, and auto-reconnect
messaging
General producer/consumer interfaces with local channel-based provider
Package
Description
codec
Unified encoding/decoding for JSON, XML, YAML with validation
data
Pipeline key-value container with typed extraction and JSON Schema generation
textutils
Named ASCII character constants for readable code
semver
Semantic versioning parser and comparator (SemVer 2.0.0 )
uuid
UUID generation (V1–V4) and parsing
Package
Description
genai
Provider-agnostic GenAI/LLM interface with prompt templates and multi-part messages
genai/impl
OpenAI, Claude, and Ollama provider implementations
Package
Description
secrets
Comprehensive credential management: encryption algorithms (AES-CTR/GCM, ChaCha20), key versioning & rotation, credential types (API Key, Password, Certificate, Token), multi-cloud stores (AWS, GCP, Vault), and pluggable storage backends
Repository
Latest
Description
golly-aws
v0.3.1
AWS service integrations: S3, SNS, SQS, Bedrock, and Secrets Manager for credentials
golly-gcp
v0.2.1
GCP service integrations: Storage, Pub/Sub, GenAI, and Secret Manager for credentials
golly-vault
v0.1.0
HashiCorp Vault integration for centralized secret management with KV engines and advanced auth
Package
Description
chrono
Task scheduler with cron, interval, and one-shot scheduling, pluggable storage, and cluster support
fsutils
Filesystem utilities: existence checks, content type detection
ioutils
MIME type lookup, channel utilities, and checksum calculation
vfs
Virtual File System with unified interface, extensible for cloud storage
l3
Lightweight Levelled Logger with console/file writers and async support
lifecycle
Component lifecycle management with dependency ordering and state tracking
managers
Generic item manager for registering, retrieving, and listing named items
pool
Generic, thread-safe object pool with configurable capacity
Package
Description
testing/assert
Lightweight assertion helpers for unit tests
📖 Full API documentation available at pkg.go.dev
We welcome contributions to the project. If you find a bug or would like to
request a new feature, please open an issue on
GitHub .
This project is licensed under the MIT License. See the LICENSE file for details.