A Ruby gem providing unified configuration management with filesystem, AWS Parameter Store, and Google Cloud Secret Manager backends.
Global is a Ruby gem that provides unified configuration management for applications, allowing developers to access settings through simple method calls. It solves the problem of fragmented configuration by supporting multiple storage backends including local YAML files, AWS Parameter Store, and Google Cloud Secret Manager, with automatic environment-specific loading.
Ruby and Rails developers who need consistent configuration management across development, staging, and production environments, particularly those using cloud services for secret storage.
Developers choose Global for its clean API, support for multiple secure backends, and ability to share configuration between backend and frontend code, eliminating configuration duplication and simplifying secret management.
"Global" provides accessor methods for your configuration data
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports YAML files, AWS Parameter Store, and Google Cloud Secret Manager with deep merging, allowing flexible storage options for different data types.
Automatically loads environment-specific sections from YAML files and supports override files like 'aws.production.yml', reducing manual configuration errors.
Integrates with encrypted storage services like AWS SSM and GCP Secret Manager, providing enterprise-grade security for sensitive credentials.
Includes Webpacker integration to share the same YAML configuration between Ruby backend and JavaScript frontend, avoiding duplication through custom setup.
Configuring AWS or GCP backends requires understanding of IAM roles, KMS keys, and cloud-specific settings, which adds significant initial overhead.
Primarily designed for Ruby on Rails; frontend sharing relies on a manual Webpacker setup and isn't straightforward for other JavaScript frameworks.
The README references backend-specific documentation that may be sparse, forcing developers to dig into source code for advanced use cases.