configloader-676

Crates.ioconfigloader-676
lib.rsconfigloader-676
version0.1.0
created_at2025-03-20 10:26:56.171251+00
updated_at2025-03-20 10:26:56.171251+00
descriptionA library for loading configuration files (JSON, TOML, YAML) into Rust structs with environment variable overrides and validation.
homepage
repositoryhttps://github.com/mohtashimnawaz/config_loader
max_upload_size
id1599071
size22,278
(mohtashimnawaz)

documentation

README

Config Loader

A Rust library for loading configuration files (JSON, TOML, YAML) into Rust structs with environment variable overrides and validation.

Features

  • Load configuration from JSON, TOML, or YAML files.
  • Override configuration values with environment variables.
  • Validate configuration using custom rules.

Usage

Add the crate to your Cargo.toml:

[dependencies]
config_loader = "0.2"

use config_loader::{load_config, validate_config, Validatable};
use serde::{Deserialize, Serialize};

#[derive(Debug, Deserialize, Serialize)]
struct Config {
    database: DatabaseConfig,
    server: ServerConfig,
}

fn main() {
    let config: Config = load_config("config.json").unwrap();
    validate_config(&config).unwrap();
    println!("{:?}", config);
}
Commit count: 0

cargo fmt