Registry / storage / nanocyte-configuration-saver-redis

nanocyte-configuration-saver-redis

JSON →
library3.3.0jsnpmunverified

A Node.js module for persisting nanocyte configuration data to a Redis store. Version 3.3.0 is the latest stable release, but the package appears to be in low-maintenance mode with sparse updates. It is part of the Octoblu IoT platform's nanocyte pipeline engine, specifically handling storage of configuration after pipeline execution. Differentiators include tight integration with nanocyte and Octoblu, but it is not actively developed and alternative solutions may be more robust for general Redis config storage.

npm install nanocyte-configuration-saver-redis
INSTALL
IMPORT
SIG · NANOCYTE-CONFIGURA
N
nanocyte-configuration-saver-redis
storagejavascriptv3.3.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.

ConfigurationSaver
✓ import { ConfigurationSaver } from 'nanocyte-configuration-saver-redis'
✗ const ConfigurationSaver = require('nanocyte-configuration-saver-redis').ConfigurationSaver
Default CJS require is valid in CommonJS environments, but named import is preferred for ESM.
NanocyteConfigurationSaverRedis
✓ const NanocyteConfigurationSaverRedis = require('nanocyte-configuration-saver-redis')
✗ import NanocyteConfigurationSaverRedis from 'nanocyte-configuration-saver-redis'
This package has a default CommonJS export; default ESM import may fail if interop is not configured.
config
✓ import { config } from 'nanocyte-configuration-saver-redis'
✗ import config from 'nanocyte-configuration-saver-redis'
config is a named export, not a default export.

Demonstrates how to create a ConfigurationSaver instance and save a configuration object to Redis.

const { ConfigurationSaver } = require('nanocyte-configuration-saver-redis'); const redis = require('redis'); const client = redis.createClient({ host: process.env.REDIS_HOST || 'localhost', port: process.env.REDIS_PORT || 6379 }); const saver = new ConfigurationSaver({ redis: client }); const config = { flows: [{ id: 'flow1', nodes: [] }] }; saver.save('my-config', config, (err, result) => { if (err) { console.error('Save failed:', err); } else { console.log('Configuration saved:', result); } client.quit(); });
Debug
Known issues
breakingIn version 2.x, the constructor accepted a callback; in 3.x it expects a Redis client object directly.
fix
Pass a Redis client instance instead of a callback to the ConfigurationSaver constructor.
affects: >=3.0.0
deprecatedThe save method callback pattern is deprecated; future versions may use promises or async/await.
fix
Wrap the callback in a Promise or use util.promisify for easier async handling.
affects: 3.x
gotchaRedis connection errors may be swallowed if not handled; always attach error listener on Redis client.
fix
client.on('error', (err) => console.error('Redis error:', err));
affects: all
gotchaConfiguration is saved as a JSON string; ensure your config object is serializable by JSON.stringify.
fix
Avoid circular references; use replacer function if needed.
affects: all
Errors
Common errors & fixes
TypeError: ConfigurationSaver is not a constructor
Using default import from ESM when package uses CommonJS exports.
fix
Use const { ConfigurationSaver } = require('...') or use a bundler that handles CJS interop.
Error: Redis connection refused
Redis server is not running or host/port are incorrect.
fix
Start Redis service or set REDIS_HOST and REDIS_PORT environment variables correctly.
Upgrade
Version history
3.3.0latest on npm
Audit
Dependencies
redisrequiredRequired for Redis client connectivity to store and retrieve configuration data.
Agent activity
14 hits · last 30 days
node
14
Resources
nanocyte-configuration-saver-redis — npm install nanocyte-configuration-saver-redis · libregistry