• setting defaults
    • reading from JSON, TOML, YAML, HCL, and Java properties config files
    • reading from environment variables
    • reading from remote config systems (etcd or Consul), and watching changes
    • reading from buffer
    • setting explicit values
      Viper can be thought of as a registry for all of your applicationsconfiguration needs.