module
Version:
v1.0.0
Opens a new window with list of versions in this module.
Published: Apr 6, 2024
License: MIT
Opens a new window with license information.
README
¶
golly
Golly is a collection of reusable common utilities for go programming language.
Goals
- Create reusable common collection of utilities targeting enterprise use cases
- Ensure the project is self-contained and minimise external dependencies.
Installation
go get oss.nandlabs.io/golly
Core Packages
- clients
- A common package for all types of client
- Checkout clients that leverage this package.
- cli
- Easy to use API for building complex command structures
- Argument parsing and validation
- codec
- Easy to use interface
- Multiformat support
- Unifed interface for Endcoding and Decoding data from structured format
- Out of the box support for
XML
JSON
& YAML
- l3
- Lightweight Levelled Logger
- Multiple logging levels
OFF,ERROR,INFO,DEBUG,TRACE
- Console and File based writers
- Ability to specify log levels for a specific package
- Async logging support
- Configuration can be done using either a file,env variables,Struct values at
runtime.
- messaging
- General producer interface for sending messages to different messaging
platforms.
- General consumer interface for receiving and processing messages from
different messaging platforms.
- A local provider interface for messaging using channels
- rest
- HTTP methods: GET, POST, PUT, DELETE
- Query parameters
- Request headers
- Proxy Configuration
- TLS Configuration
- Transport Layer Configuration
- SSL Configuration
- Error handling
- semver
- Adheres to the SemVer 2.0.0
specification
- Easy to use API for parsing, comparing and generating SemVer versions
- Supports pre-release and build metadata
- turbo
- Smart Http Routing Capabilities
- Aimed for API Development
- Easy to use
- Filters
- vfs
- Virtual File System
- Unified interface for multiple file systems
- Default implementation for local fs available
- Extensible framework
And many more... Refer to Godocs for
more information
Contributing
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.
License
This project is licensed under MIT License. See the License file for
details.
Directories
¶
Package cli provides functionality for handling command-line arguments.
|
Package cli provides functionality for handling command-line arguments. |
Package clients provides a collection of client libraries for various services.
|
Package clients provides a collection of client libraries for various services. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Package messaging provides a set of utilities for working with messaging systems.
|
Package messaging provides a set of utilities for working with messaging systems. |
Package rest provides a set of utilities for making RESTful API calls.
|
Package rest provides a set of utilities for making RESTful API calls. |
|
|
|
|
testing
|
|
|
|
|
|
|
|
|
|
|
|
Click to show internal directories.
Click to hide internal directories.