The official Unleash SDK for Node.js. This SDK lets you evaluate feature flags in your Node.js services and applications.
Unleash is an open-source feature management platform. You can use this SDK with Unleash Enterprise or Unleash Open Source.
For complete documentation, see the Node.js SDK reference.
Requirements
- Node.js 20 or later
Installation
npm install unleash-client
Quick start
The following example initializes the SDK and checks a feature flag:
import { startUnleash } from 'unleash-client'; const unleash = await startUnleash({ url: 'https://<your-unleash-instance>/api/', appName: 'my-node-name', customHeaders: { Authorization: '<your-backend-token>' }, }); const enabled = unleash.isEnabled('my-feature'); if (enabled) { // new behavior } const variant = unleash.getVariant('checkout-experiment'); if (variant.name === 'blue') { // blue variant behavior } else if (variant.name === 'green') { // green variant behavior }
Contributing
Local development
Clone the repository and install dependencies:
git clone https://github.com/Unleash/unleash-node-sdk.git
cd unleash-node-sdk
yarn installThe client specification test data is included as a dev dependency (@unleash/client-specification). It defines a shared contract that all Unleash SDKs test against.
Running tests
yarn test # run tests yarn coverage # run tests with coverage
Benchmarking
Run the feature flag evaluation benchmark:
Code style and formatting
The project uses Biome for linting and formatting:
yarn lint # check for issues yarn lint:fix # auto-fix issues
Building
yarn build # compile TypeScript to lib/License
Apache-2.0