This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

characteristic

0.0.3 • Public • Published

Characteristic - Feature flag configuration for Node.js

Build Status

Feature flag implementation in Node.

Inspired by Etsy Feature API

API

var Feature = require("characteristic")();

Feature.isEnabled("my_feature");

It returns true if my_feature is enabled.

According to web application, use binding to apply feature flag on request object when request.user or request.group exists:

function(request, response, next) {
    var enabled = Feature.isEnabled.bind(request)("my_feature");
    // enabled is true if my_feature is enabled for current user
}

Configuration

It loads default configuration file from <project-root>/config/<node-env>.yml:

---
features:
  zero-downtime: on
  flying-phone: off
  super-power:
    users: [hulk, thor, superman]
  hero:
    groups: [shield, avengers]

Uses customized configuration file path:

var Feature = require("characteristic")("./foo/custom-config.yml");

Reload configuration:

Feature.reload();

// reload with new config path
Feature.reload("./bar/custom-config.yml");

Readme

Keywords

Package Sidebar

Install

npm i characteristic

Weekly Downloads

0

Version

0.0.3

License

MIT

Last publish

Collaborators

  • shawnzhu