Unleash / unleash-express

Unleash helper for Express.js
6 stars 2 forks source link

unleash-express

Build Status

unleash-client that helps persisting feature toggle results over Express.js

Prerequisite

You will need express and cookie-parser:

const express = require('express');
const app = express();
app.use(cookieParser());

Configuration

const { initialize } = require('unleash-client');
const unleash = initialize(...);
const { UnleashExpress } = require('unleash-express');
const unleashExpress = new UnleashExpress(unleash, options);

Available options:

Usage

1. Use the middleware

app.use(cookieParser());
app.use(unleashExpress.middleware()); // This will allow reading/setting the cookies

2. Flip the coin

Ask unleash-client for the value of a feature as usual by using getVariant.

// In your feature.controller.js
req.unleash.getVariant('feature', ...);

You can also check alternatives or features that are enabled by using isEnabled.

// In your controller
req.unleash.isEnabled('alternative');

3. Reuse the result along the pipeline

Peek the persisted results:

req.unleash.results['feature']; // Variant object or null

Acknowledgment

Inspired by fflip-express