Registry / database / launchdarkly-node-server-sdk-redis

launchdarkly-node-server-sdk-redis

JSON →
library2.1.0jsnpmunverified

A Redis-backed persistent feature store for the LaunchDarkly Node.js server-side SDK, replacing the default in-memory store. Current version is 2.1.0, released on an as-needed basis. Compatible with the main SDK versions 6 and 7. Enables feature flag data persistence across application restarts and multi-instance deployments. Supports optional in-memory caching with configurable TTL to reduce Redis traffic. Ships TypeScript type definitions. Requires Node.js >= 12 and the `redis` npm package (v3 or v4).

npm install launchdarkly-node-server-sdk-redis
INSTALL
IMPORT
SIG · LAUNCHDARKLY-NODE-
L
launchdarkly-node-server-sdk-redis
databasejavascriptv2.1.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RedisFeatureStore
import { RedisFeatureStore } from 'launchdarkly-node-server-sdk-redis'
const RedisFeatureStore = require('launchdarkly-node-server-sdk-redis').RedisFeatureStore
ESM and CommonJS both supported. Named export only; no default export.
LDRedisFeatureStore (deprecated)
import { RedisFeatureStore } from 'launchdarkly-node-server-sdk-redis'
import { LDRedisFeatureStore } from 'launchdarkly-node-server-sdk-redis'
LDRedisFeatureStore was deprecated in v2.0 in favor of RedisFeatureStore.
RedisFeatureStore constructor options
import { RedisFeatureStore } from 'launchdarkly-node-server-sdk-redis'; const store = RedisFeatureStore({ redisOpts: { host: 'localhost', port: 6379 }, cacheTTL: 30 });
const store = new RedisFeatureStore();
RedisFeatureStore is a factory function, not a class constructor. Do not use 'new'.

Shows how to initialize the Redis feature store and configure the LaunchDarkly client with it, including Redis connection options and caching.

const { RedisFeatureStore } = require('launchdarkly-node-server-sdk-redis'); const LaunchDarkly = require('launchdarkly-node-server-sdk'); const store = RedisFeatureStore({ redisOpts: { host: process.env.REDIS_HOST || 'localhost', port: parseInt(process.env.REDIS_PORT || '6379'), }, cacheTTL: 30, // seconds; 0 disables caching }); const config = { featureStore: store }; const client = LaunchDarkly.init(process.env.LAUNCHDARKLY_SDK_KEY || '', config); client.on('ready', () => { console.log('SDK is ready'); client.variation('my-flag-key', { key: 'user-key' }, false, (err, value) => { console.log('Flag value:', value); }); });
Debug
Known issues
breakingv2.0 renamed LDRedisFeatureStore to RedisFeatureStore. The old name is removed.
fix
Replace 'LDRedisFeatureStore' with 'RedisFeatureStore' in imports and usage.
affects: >=2.0.0
breakingRedisFeatureStore is a factory function, not a class. Do not use 'new'.
fix
Call RedisFeatureStore() without 'new': const store = RedisFeatureStore();
affects: >=2.0.0
deprecatedLDRedisFeatureStore type/export was removed in v2.0. Import RedisFeatureStore instead.
fix
Use import { RedisFeatureStore } from 'launchdarkly-node-server-sdk-redis';
affects: >=2.0.0
gotchaThe redis npm package is a peer dependency and must be installed separately. Not installing it will cause a runtime error when connecting.
fix
Run: npm install redis
affects: >=1.0.0
gotchaIf cacheTTL is set too high, flag evaluations may return stale data even if Redis is updated externally.
fix
Set cacheTTL to 0 to disable caching, or reduce TTL based on your update frequency.
affects: >=1.0.0
Errors
Common errors & fixes
TypeError: RedisFeatureStore is not a constructor
Using 'new' on a factory function
fix
Remove 'new': const store = RedisFeatureStore(); instead of const store = new RedisFeatureStore();
Error: Cannot find module 'redis'
Missing peer dependency 'redis'
fix
Install redis: npm install redis
TypeError: Cannot destructure property 'RedisFeatureStore' of ... undefined
Importing from wrong package or using deprecated export name (LDRedisFeatureStore)
fix
Only RedisFeatureStore is exported. Use: import { RedisFeatureStore } from 'launchdarkly-node-server-sdk-redis';
Error: LaunchDarkly SDK version must be >=6.2.0 to use external feature store
Installed version of launchdarkly-node-server-sdk is too old
fix
Update launchdarkly-node-server-sdk to >=6.2.0 (or >=7.0.0 for latest)
Upgrade
Version history
2.1.0latest on npm
Audit
Dependencies
launchdarkly-node-server-sdkrequiredPeer dependency; provides the main SDK client and integration hooks
redisrequiredRequired Redis client library; must be installed separately by the user
Agent activity
8 hits · last 30 days
node
6
Resources
launchdarkly-node-server-sdk-redis — npm install launchdarkly-node-server-sdk-redis · libregistry