0.9.3 • Published 6 years ago

rue-config v0.9.3

Weekly downloads
5
License
Apache-2.0
Repository
github
Last release
6 years ago

rue-config

rue a not (too) opinionated dependency injection container for nodejs

npm state npm node David Build Status

NPM

Overview

Configuration injection extension for rue

Features

  • Injection of configuration properties

  • Simple Memory-based, File-based, and Environment Variable configuration solutions

Installation

npm install rue rue-config --save

Usage

Read the full documentation available at http://ruenode.io.

Example

// mymodule.js (module file)
const database = require('database');

exports.init = function(host, port) {
  database.connect(host, port);
};

// rue.js (configuration file)
const rue = require('rue');
const rueConfig = require('rue-config');

let config = {
  database: {
    host: 'somehostname.com',
    port: 1234
  }
};
rueConfig.memory(config)
  .done();

rue.module('myModule')
  .useModule(require('./mymodule.js'))
  .withDependencies('${database.host}', '${database.port}')
  .done();

rue.activate()
  .then(() => {
    console.log('Application has been successfully started');
  })
  .catch((error) => {
    console.log('Application has failed to be started', error);    
  });