| Crates.io | env-vars-config |
| lib.rs | env-vars-config |
| version | 0.5.3 |
| created_at | 2025-03-07 14:38:03.56369+00 |
| updated_at | 2025-06-24 00:55:48.026293+00 |
| description | A simple lib for configuring your applications via environment variables |
| homepage | |
| repository | https://github.com/NikSneMC/env-vars-config |
| max_upload_size | |
| id | 1583137 |
| size | 21,450 |
A simple lib for configuring your applications via environment variables.
rustc1.80.0+
This version is explicitly tested in CI and may be bumped in any release as needed. Maintaining compatibility with older compilers is a priority though, so the bar for bumping the minimum supported version is set very high. Any changes to the supported minimum version will be called out in the release notes.
[dependencies]
env-vars-config = "0.5"
use std::{net::SocketAddr, str::FromStr as _};
use env_vars_config::{env_vars_config, set_env_only};
env_vars_config! {
SERVER_ADDRESS: SocketAddr = SocketAddr::from_str("0.0.0.0:8080").expect("this is a valid SocketAddr"),
WORKERS_COUNT: i32 = 32,
OTEL_SERVICE_NAME: String = "test-service",
}
fn main() {
config::init();
println!("server address: {}", config::SERVER_ADDRESS.clone());
println!("workers count: {}", config::WORKERS_COUNT.clone());
println!("otel service name: {}", config::OTEL_SERVICE_NAME.clone());
unsafe {
use config::OTEL_SERVICE_NAME;
set_env_only!(OTEL_SERVICE_NAME);
}
println!(
"otel service name (from env): {}",
std::env::var("OTEL_SERVICE_NAME").unwrap()
);
config::test_values();
}