npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

cnn-config-client

v0.1.8

Published

A module that gets data from a config server and set environment variables.

Downloads

32

Readme

CNN Server Configuration Client

A module that gets data from a config server and set environment variables.

build node npm npm-downloads dependency-status

Contents

Documentation

  • ESDoc documentation can be generated. See below for details.

Local development

Requirements

nvm - a reasonably current version

nvm will be used to manage the node versions installed on your localhost.

node - The version specified by .nvmrc and package.json

You should install this with nvm. Make sure you are in the root of the project directory and do the following. There is a .nvmrc file that tells nvm what version to install and use. The first nvm install command is only needed the first time you try to use a version that has not been installed on your system yet.

$ nvm install

$ node --version
v5.5.0

Local install

Clone this repository, install the above requirements, then:

$ cd cnn-config-client
$ nvm use
$ npm install

How to test

Run the following.

$ npm test

Environment variables

  • CONFIG_HOST - REQUIRED - The configuration host that the client should interface with for the config values.

Exported methods

register(options)
update(options)
getConfig(options, callback)

Example 1: Config update

const client = require('../index.js'),
    config = {
        product: 'test',
        environment: 'test',
        token: '35e6c81b5a764404eac05f0c556d7cb3f4549c00',
        data: {
            timeout: 9
        }
    };

client.update(config);
UPDATE RESPONSE: {"product":"test","environment":"test","data":{"timeout":9},"message":"Config updated"}

Example 2: Set the environment

const client = require('../index.js'),
    config = {
        product: 'test',
        environment: 'test',
        token: '35e6c81b5a764404eac05f0c556d7cb3f4549c00'
    };

client.getConfig(config, function (error, data) {
    if (error) {
        console.log(error);
    } else {
        console.log('data: %j', data);
        console.log('Environment variables have been set');   
    }
});
set process.env.TIMEOUT = 9
Environment variables have been set

Generate Local Docs

$ npm run generate-docs
$ open docs/index.html

Contributing

If you would like to contribute, just fork and submit a pull request. Please review the contributing guidelines first.

Project Owner

A.D. Slaton [email protected] (@adslaton) is the current Project Owner of this repository. The project owner is responsible for the implementation of this project.

Current Project Team Members

This is a list of people directly responsible for the implementation of this project. For more information about the governance of this project, see GOVERNANCE.md.

Collaborators follow the COLLABORATOR_GUIDE.md in maintaining this project.