Skip to content

Handles Node application configuration files. Includes default values and helper functions.

License

Notifications You must be signed in to change notification settings

cityssm/configurator

Repository files navigation

configurator

npm (scoped) DeepSource Maintainability Coverage Testing codecov

Handles Node application configuration files. Includes default values and helper functions.

Installation

npm install @cityssm/configurator

Usage

import { Configurator } from '@cityssm/configurator'

import { userConfig } from 'data/config.js'

/*
 * userConfig = {
 *   application: {
 *     httpPort: 9090
 *   },
 *   userNames: ['administrator']
 * }
 */

const defaultValues = {
  'application.httpPort': 8080,
  'application.applicationName': 'Super Awesome Application',
  userNames: []
}

const config = new Configurator(defaultValues, userConfig)

console.log(config.getConfigProperty('application.httpPort'))
// => 9090

console.log(config.getConfigProperty('application.applicationName'))
// => "Super Awesome Application"