the config crate is the go-to for robust multilayered application configuration. supports all the different file formats you might want along with defaults, config merging, and environment variables configuration as well.
https://crates.io/crates/config