itconfig
Easy build a configs from environment variables and use it in globally.
We recommend you start with the documentation.
Example usage
extern crate itconfig;
use env;
//use dotenv::dotenv;
config!
Macro is an optional feature, enabled by default. You can install itconfig without default features and use this lib as shown below
use *;
use env;
// use dotenv::dotenv;
Roadmap
- Add namespace for variables
- Custom env name
- Support feature config and other meta directives
- Add default value to env if env is not found
- Concat env variables to one variable
- Add nested namespaces
- Support meta for namespaces
- Support array type
- Support hashmap type
- Support custom env type
- Common configuration for namespace variables
Available features
- default - ["macro", "primitives", "static"]
- macro - Activates
config!
macros for easy configure web application. - static - Add
static
option toconfig!
macros (uses optionallazy_static
package). - array - Add EnvString impl for vector type (uses optional
serde_json
package). - primitives - Group for features:
numbers
andbool
. - numbers - Group for features:
int
,uint
andfloat
. - int - Group for features:
i8
,i16
,i32
,i64
,i128
andisize
. - uint - Group for features:
u8
,u16
,u32
,u64
,u128
andusize
. - float - Group for features:
f32
andf64
- i8 - impl EnvString for i8 type
- i16 - impl EnvString for i16 type
- i32 - impl EnvString for i32 type
- i64 - impl EnvString for i64 type
- i128 - impl EnvString for i128 type
- isize - impl EnvString for isize type
- u8 - impl EnvString for u8 type
- u16 - impl EnvString for u16 type
- u32 - impl EnvString for u32 type
- u64 - impl EnvString for u64 type
- u128 - impl EnvString for u128 type
- usize - impl EnvString for usize type
- f32 - impl EnvString for f32 type
- f64 - impl EnvString for f64 type
- bool - impl EnvString for bool type
License
[MIT] © Ice Temple
Contributors
pleshevskiy (Dmitriy Pleshevskiy) – creator, maintainer.