Layered configuration system for Rust applications (with strong support for 12-factor applications).
redis.port
) and subscript operators ( databases[0].name
)Please note that this library can not be used to write changed configuration values back to the configuration file(s)!
[dependencies] config = "0.13.1"
ini
- Adds support for reading INI filesjson
- Adds support for reading JSON filesyaml
- Adds support for reading YAML filestoml
- Adds support for reading TOML filesron
- Adds support for reading RON filesjson5
- Adds support for reading JSON5 filesLibrary provides out of the box support for most renowned data formats such as JSON or Yaml. Nonetheless, it contains an extensibility point - a Format
trait that, once implemented, allows seamless integration with library's APIs using custom, less popular or proprietary data formats.
See custom_format example for more information.
See the documentation or examples for more usage information.
We currently support Rust 1.56.0 and newer.
config-rs is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.