0.0.6 • Published 4 years ago

user-config-manager v0.0.6

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

user-config-manager

npm version npm downloads

NPM

Build Status

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();
0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

5 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago