Welcome to Unleash Client
The unleash-client is a powerful tool for feature management allowing developers to maximize control over toggling features on and off in applications. This blog post dives into its robust API and provides code snippets demonstrating various functionalities. Whether you are new or an experienced user, you’ll find this guide useful.
Getting Started
To start using unleash-client, install the library via npm:
npm install unleash-client
Initialize Unleash Client
Before leveraging the API, initialize the Unleash client with the following code:
const { Unleash } = require('unleash-client'); const unleash = new Unleash({ url: 'https://app.unleash-hosted.com/demo/api/', appName: 'my-nodejs-app', environment: 'development' }); unleash.on('ready', () => { console.log('Unleash client is ready!'); });
Check Feature Toggle Status
Once initialized, check a feature toggle’s status using this code snippet:
const isFeatureEnabled = unleash.isEnabled('newSignUpFeature'); if (isFeatureEnabled) { console.log('New Sign Up Feature is enabled!'); } else { console.log('New Sign Up Feature is disabled.'); }
Using Context to Toggle Features
Feature toggling can be enhanced with context:
const context = { userId: '1234', sessionId: 'some-session-id' }; const isFeatureEnabledForUser = unleash.isEnabled('userFeature', context);
Advanced API – Variant Features
Use variants to deliver different feature configurations:
const variant = unleash.getVariant('testFeature', { userId: '5678' }); if (variant.enabled) { console.log(`Variant enabled with payload: ${variant.payload}`); } else { console.log('Variant not enabled.'); }
Example Application Using Unleash Client
Here is an example of a simple application that demonstrates the use of several APIs discussed:
const { Unleash } = require('unleash-client'); const express = require('express'); const app = express(); const unleash = new Unleash({ url: 'https://app.unleash-hosted.com/demo/api/', appName: 'my-nodejs-app', environment: 'development' }); unleash.on('ready', () => { console.log('Unleash client is ready!'); app.get('/feature-status', (req, res) => { const isEnabled = unleash.isEnabled('someFeature'); res.send(`Feature status: ${isEnabled}`); }); app.listen(3000, () => { console.log('Server is running on port 3000'); }); });
By utilizing the unleash-client, you can manage your feature toggles with ease and precision, allowing fine-grained control over what features are enabled for different users and environments. This can significantly enhance your development process, making it more flexible and agile.
Hash: dc988b64c441d6fe7b1efeda33b68f9bd640aa1d6f591ed95bcad5c0862ff709