3 releases (breaking)

0.3.1 Dec 9, 2024
0.2.0 Mar 28, 2024
0.1.0 Mar 13, 2024

#653 in Text processing

Download history 7/week @ 2024-09-23 169/week @ 2024-12-09

169 downloads per month

MIT license

8KB
102 lines

env2toml

Convert env vars to toml text.

Latest version All downloads Downloads of latest version MIT License Github Tags Github Issues Build Status

Syntax

__ split to .

APP_TITLE='TOML Example'
APP_OWNER__NAME='Tom Preston-Werner'
APP_DATABASE__ENABLED=true
APP_DATABASE__PORT=3306
APP_DATABASE__PORTS='[ 8000, 8001, 8002 ]'
APP_SERVERS__ALPHA__IP=10.0.0.1
APP_SERVERS__ALPHA__ROLE=frontend
APP_SERVERS__BETA__IP=10.0.0.2
APP_SERVERS__BETA__ROLE=backend
APP_USERS__0__NAME=USER0
APP_USERS__0__PASSWORD=u0
APP_USERS__1__NAME=USER1
APP_USERS__1__PASSWORD=u1

PRIFIX: APP_

RESULT:

title="TOML Example"
[owner]
name="Tom Preston-Werner"

[database]
enabled=true
port=3306
ports=[ 8000, 8001, 8002 ]

[servers]

[servers.alpha]
ip="10.0.0.1"
role="frontend"

[servers.beta]
ip="10.0.0.2"
role="backend"

[[users]]
name="USER0"
password="u0"

[[users]]
name="USER1"
password="u1"

Usage

use dotenvy;
use env2toml::env2toml;


fn main() {
    dotenvy::dotenv().ok();
    let result = env2toml("APP_").unwrap();
    println!("\n{}", result);
}

License

This project is licensed under the MIT license.

Dependencies

~0.5–1MB
~24K SLoC