Socket
Book a DemoInstallSign in
Socket

@openfeature/launchdarkly-client-provider

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@openfeature/launchdarkly-client-provider

![Experimental](https://img.shields.io/badge/experimental-breaking%20changes%20allowed-yellow)

0.3.2
latest
npmnpm
Version published
Maintainers
2
Created
Source

launchdarkly-client Provider

Experimental

An unofficial browser provider for LaunchDarkly.

Installation

$ npm install @openfeature/launchdarkly-client-provider

Sample initialization

import { LaunchDarklyClientProvider } from '@openfeature/launchdarkly-client-provider';

// initialize provider
const clientEnvKey = 'LDEnvironmentID';

/*
 * optional launch darkly options
 * @see https://launchdarkly.github.io/js-client-sdk/interfaces/LDOptions.html
 */
const ldOptions = {
  streaming: true,
};

/*
  * initialization happens inside the provider, the initial context will be { anonymous: true } by default if there is not context set in Open Feature.
  * @see https://launchdarkly.github.io/js-client-sdk/interfaces/LDContextCommon.html#anonymous
  * you can change it using setContext. 

  */
const ldOpenFeatureProvider = new LaunchDarklyClientProvider(clientEnvKey, options);

//set open feature provider and get client
OpenFeature.setProvider(ldOpenFeatureProvider);
const client = OpenFeature.getClient('my-client');

//use client
const boolValue = client.getBooleanValue('boolFlag', false);

To opt in for streaming, you should set "streaming: true" explicitly, that guarantee you set the appropriate listeners and you enable streaming in the LD SDK

Update Context

For context update always use OpenFeature.setContext(myNewContext);

Please note that context changes result in network traffic, so changes should be made sparingly in accordance to relevant user behavior.

await OpenFeature.setContext({ targetingKey: 'my-key' });
//Laundarkly uses key but this provider tranlates targetingKey to key;
//So the above is the same as doing
await OpenFeature.setContext({ key: 'my-key' });

Read more about LD contexts here

Tracking

You can send custom events to LaunchDarkly metrics for use in experiments and guarded rollouts. To learn more, read Sending custom events.

const client = await OpenFeature.getClient();
client.track('event-key-123abc', { customProperty: someValue })

Building

Run nx package providers-launchdarkly-client to build the library.

Running unit tests

Run nx test providers-launchdarkly-client to execute the unit tests via Jest.

FAQs

Package last updated on 12 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.