https://github.com/raystack/salt
Salt is a collection of libraries and tools used in the Raystack ecosystem to improve the experience of developing projects with Go.
https://github.com/raystack/salt
cloud-native common golang libraries
Last synced: 4 months ago
JSON representation
Salt is a collection of libraries and tools used in the Raystack ecosystem to improve the experience of developing projects with Go.
- Host: GitHub
- URL: https://github.com/raystack/salt
- Owner: raystack
- License: apache-2.0
- Created: 2021-08-11T08:30:00.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-08-18T09:40:02.000Z (5 months ago)
- Last Synced: 2025-08-18T11:30:28.528Z (5 months ago)
- Topics: cloud-native, common, golang, libraries
- Language: Go
- Homepage:
- Size: 283 KB
- Stars: 12
- Watchers: 8
- Forks: 8
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# salt
[](https://godoc.org/github.com/raystack/salt)

[](https://goreportcard.com/report/github.com/raystack/salt)
Salt is a Golang utility library offering a variety of packages to simplify and enhance application development. It provides modular and reusable components for common tasks, including configuration management, CLI utilities, authentication, logging, and more.
## Installation
To use, run the following command:
```
go get github.com/raystack/salt
```
## Pacakages
### Configuration and Environment
- **`config`**
Utilities for managing application configurations using environment variables, files, or defaults.
### CLI Utilities
- **`cli/cmdx`**
Command execution and management tools.
- **`cli/printer`**
Utilities for formatting and printing output to the terminal.
- **`cli/prompt`**
Interactive CLI prompts for user input.
- **`cli/terminal`**
Terminal utilities for colors, cursor management, and formatting.
- **`cli/version`**
Utilities for displaying and managing CLI tool versions.
### Authentication and Security
- **`auth/oidc`**
Helpers for integrating OpenID Connect authentication flows.
- **`auth/audit`**
Auditing tools for tracking security events and compliance.
### Server and Infrastructure
- **`server`**
Utilities for setting up and managing HTTP or RPC servers.
- **`db`**
Helpers for database connections, migrations, and query execution.
- **`telemetry`**
Observability tools for capturing application metrics and traces.
### Development and Testing
- **`dockertestx`**
Tools for creating and managing Docker-based testing environments.
### Utilities
- **`log`**
Simplified logging utilities for structured and unstructured log messages.
- **`utils`**
General-purpose utility functions for common programming tasks.