Skip to content

loxjs/config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@loxjs/config

A configuration management library for Node.js applications, @loxjs/config provides a simple and fluent API for getting and setting configuration values, bulk updates, and merging configurations with defaults.

Features

  • Easy configuration value retrieval with dot notation
  • Set individual configuration values or in bulk
  • Merge configurations with default values
  • Fluent API for checking equality or inequality of configuration values

Installation

Install @loxjs/config using npm:

npm install @loxjs/config

Or using yarn:

yarn add @loxjs/config

Usage

Here's a quick overview of how you can use @loxjs/config.

Importing

First, import and initialize the module:

const Config = require('@loxjs/config');

const config = new Config({
  // Initial configuration values
});

Setting Configuration Values

To set a configuration value:

config.set('path.to.setting', 'value');
To set multiple configuration values at once:

config.bulkSet({
  'path.to.setting': 'value',
  'another.path.to.setting': 'another value'
});

Getting Configuration Values

To get a configuration value, use:

const value = config.get('path.to.setting');

To get a configuration value with a defaultValue, defaultValue is returned when configuration value is undefined:

const value = config.get('path.to.setting', 'defaultValue');

To get a configuration value and set it if it doesn't exist:

const value = config.geset('path.to.setting', 'defaultValue');

Checking Configuration Values

To check if a configuration value equals a specific value:

const isEqual = config.eq('path.to.setting', 'value');

To check if a configuration value does not equal a specific value:

const isNotEqual = config.ne('path.to.setting', 'value');

Merging Configuration Values

To merge a set of default values with existing configuration:

const mergedConfig = config.merge('path.to.setting', {
  defaultKey: 'defaultValue',
  anotherDefaultKey: 'anotherDefaultValue'
});

Contributing

Contributions to @loxjs/config are welcome! Please ensure that your contributions adhere to the following guidelines:

  • Write clear, readable, and maintainable code.
  • Follow existing coding styles and practices.
  • Write meaningful commit messages.
  • Update the documentation accordingly.

For more detailed information, please read the contributing guide.

Enjoy using @loxjs/config!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published