Skip to content

alltherooms/unleash-express

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unleash-express

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

Configuration

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

Available options:

  • cookieName (string): The name of the cookie to persist the result values of each feature toggle. Defaults to 'unleash'
  • cookieOptions (object): Additionl options for the cookie like expires or maxAge. No default.

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 experiment.

// In your feature.controller.js
req.unleash.experiment('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

About

Unleash helper for Express.js

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%