3 releases (breaking)

Uses new Rust 2024

0.3.0 Apr 7, 2025
0.2.0 Apr 4, 2025
0.1.0 Apr 4, 2025

#1189 in Parser implementations

Download history 291/week @ 2025-04-01 79/week @ 2025-04-08

370 downloads per month
Used in rsa_ui

MIT license

110KB
3K SLoC

Rust Docs Coverage Crates License

Ronf

A configuration library with saving based on config-rs.

Examples

use ronf::prelude::{Config, File, FileFormat};

fn main() {
    let config = Config::builder()
        .add(File::new_str(
            "test_file",
            FileFormat::Json,
            "{\"key\": \"value\"}",
        ))
        .build()
        .unwrap();
    println!("\"key\": {}", config.get("key").unwrap());
}

For more examples, check examples/. Run with cargo run --example FILE_NAME.

Features

  • ordered - Uses HashMap from indexmap instead of std::collections to preserve order of arrays;
  • load_after_build - Enables loading saves on Config (After building with ConfigBuilder::build());
  • read_file - Add functions to read File from path;
  • env - Adds .env() on ConfigBuilder to overwrite keys with env vars.

File formats

Dependencies

~0.1–1MB
~22K SLoC