user-config-manager
v0.0.6
Published
It is a node module to help with configurations in a node console application.
Downloads
9
Readme
user-config-manager
It is a node module to help with persistent user configurations in a node console application.
Why to use?
If you are working on a console application that needs to save certain user preferences, you need not worry about managing it by yourself! Just add this module to your application and it will take care of prompting the user and persisting the response across application sessions!
How to get?
npm install user-config-manager
How to use?
You can fetch the user configurations without having to care about where it is saved already or being prompted to the user with this simple code snippet:
const path = require('path');
const ConfigManager = require('user-config-manager');
const configurations = ConfigManager(
path.join(require('os').homedir(), '/.my-app-configs.json'), // Configuration file path
[
{
"key": "some_key",
"caption": "What would you like to have? "
},
{
"key": "some_other_key",
"caption": "And for the desert? "
}
]
);
configurations.getConfiguration(); // => Asks user for preferences
configurations.getConfiguration(); // => Uses configuration from the file
This will synchronously return an object containing key value pair like:
configurations: {
"some_key": "Some User Response",
"some_other_key": "Some Other Response"
}
When invoked the first time, it will prompt the user with captions and store the user responses with the respective keys in the provided configuration file. Once the configurations are saved, it will pick up the saved configurations and there will be no prompts to the user for the keys already stored for any successive invokations to getConfiguration()
.
To clear the saved configurations, you can call the clear()
function:
ConfigManager.clear();