A library for incrementaly build config objects through layering config files in many formats. Check out the features:
- Support native objects input directly
- Load config files
- Merge configs chronologically
- Supported formats so far: TOML (
toml), JSON and YAML (yaml) - Available in the Deno ecosystem (see directory
/deno)
Install with: npm i -P confort
You also need to install the lib for parsing the type of file you mean to use like:
npm i tomlfor parsing TOML
In your code:
constconfort=require('confort');// Constructor Formsletconf=confort();// Empty conf objectletconf=confort({key: 'value',key2: 'value2'});// Initial conf from objectsletconf=confort('./my-file.toml');// Initial conf from file// Adding incremental config layerletc1=confort(c1,{key: 'value'});// => { key: 'value' }c1=confort(c1,{key: 'newValue',otherKey: 'value'});// => { key: 'newValue', otherKey: 'value' }c1=confort(c1,'./my-file.yml');Get Started on Deno
importconfortfrom'https://deno.land/x/confort@0.2.0/deno/main.js'// Constructor Formsletconf=confort();// Empty conf objectletconf=confort({key: 'value',key2: 'value2'});// Initial conf from objectsletconf=confort('./my-file.toml');// Initial conf from file// Adding incremental config layerletc1=confort(c1,{key: 'value'});// => { key: 'value' }c1=confort(c1,{key: 'newValue',otherKey: 'value'});// => { key: 'newValue', otherKey: 'value' }c1=confort(c1,'./my-file.yml');If you have found any problems with this module, please:
- Open an issue.
- Describe what happened and how.
- Also in the issue text, reference the label
~bug.
We will make sure to take a look when time allows us.
If you wish to get that awesome feature or have some advice for us, please:
- Open an issue.
- Describe your ideas.
- Also in the issue text, reference the label
~proposal.
If you have spotted any enhancements to be made and is willing to get your hands dirty about it, fork us and submit your merge request so we can collaborate effectively.