Configu's Terminology

Here is a dictionary of some key concepts in Configu:

ConceptExplanationResources
Config

A Config is a generic representation of a software configuration. It is the data model that Configu uses to store and fetch configuration data. A Config consists of four major properties:

  • key: The name of the configuration as it appears in the code and in the ConfigSchema.
  • schema: The unique identifier of the ConfigSchema that the configuration has been declared on.
  • value: The literal value of the configuration in the ConfigSet.
  • set: The path of the ConfigSet that the value belongs to.
Cfgu

A Cfgu is a generic declaration of a Config, that specifies information about its type, constraints, and other characteristics.

ConfigSchema

A ConfigSchema is a file stored as [Config.schema].cfgu.[json|yaml] that contains binding records between a unique [Config.key] and its Cfgu declaration.

ConfigSet

A ConfigSet ([Config.set]) is a string representing a path in a hierarchical structure (tree) that is used to organize and group [Config.value]s for different contexts such as environments, tenants, etc.

ConfigStore

A ConfigStore is a storage engine for Configs, which can be any system or service that is capable of storing data. It can be a simple text file, a database, a secret manager, Configu's SaaS Configuration Store, or your own custom implementation.

Configuration file

In computing, configuration files are files used to configure the parameters and initial settings for some computer programs. They are used for user applications, server processes and operating system settings.

Configuration formats

XML, JSON, YAML, TOML, Dotenv, HCL, etc..

Configuration secret

API keys, passwords, certificates, and other sensitive data.

Configuration template

A text that contains {{mustache}} templates and can be rendered as a configuration file.

Configuration syncornizer

A process that syncs configuration data through Configu to a runtime environment such as Vercel, Netlify, AWS Lambda, AWS ECS, K8s, etc.