{"id":46419,"library":"spawnpoint-redis","title":"spawnpoint-redis","description":"Redis plugin for the Spawnpoint framework, providing a configured ioredis instance mounted at app.redis. Version 3.0.0 wraps ioredis for Redis connections, with configuration via redis.json matching ioredis options. Integrates seamlessly with Spawnpoint's lifecycle and logging. Compared to using ioredis directly, spawnpoint-redis automates connection management within Spawnpoint apps. Release cadence is irregular, tied to Spawnpoint ecosystem updates.","status":"active","version":"3.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/nodecraft/spawnpoint-redis","tags":["javascript","redis","spawnpoint"],"install":[{"cmd":"npm install spawnpoint-redis","lang":"bash","label":"npm"},{"cmd":"yarn add spawnpoint-redis","lang":"bash","label":"yarn"},{"cmd":"pnpm add spawnpoint-redis","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core Redis client library that spawnpoint-redis wraps and re-exports","package":"ioredis","optional":false}],"imports":[{"note":"ESM import syntax; the package is ESM-only.","wrong":"const spawnpointRedis = require('spawnpoint-redis')","symbol":"default","correct":"import spawnpointRedis from 'spawnpoint-redis'"},{"note":"Named export for TypeScript types/classes.","wrong":"const { SpawnpointRedisPlugin } = require('spawnpoint-redis')","symbol":"SpawnpointRedisPlugin","correct":"import { SpawnpointRedisPlugin } from 'spawnpoint-redis'"},{"note":"Default export is the plugin factory; named export does not exist.","wrong":"import { spawnpointRedis } from 'spawnpoint-redis'","symbol":"spawnpointRedis","correct":"import spawnpointRedis from 'spawnpoint-redis'"}],"quickstart":{"code":"import spawnpointRedis from 'spawnpoint-redis';\nimport Spawnpoint from 'spawnpoint';\n\nconst app = new Spawnpoint();\napp.plugin(spawnpointRedis);\n\napp.ready(async () => {\n  await app.redis.set('key', 'value');\n  const val = await app.redis.get('key');\n  console.log('Redis key:', val);\n  process.exit(0);\n});\n\napp.catchErrors((err) => {\n  console.error('Error:', err);\n  process.exit(1);\n});","lang":"typescript","description":"Shows registering the plugin on a Spawnpoint app and using app.redis to set/get a key."},"warnings":[{"fix":"Update Node.js to 14+ and use import syntax instead of require().","message":"Version 3.0.0 drops support for Node.js < 14 and is ESM-only.","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Pass options directly to spawnpointRedis(options) instead of relying on redis.json.","message":"Plugin configuration via redis.json is deprecated; use environment variables or direct options.","severity":"deprecated","affected_versions":">=2.0.0"},{"fix":"Always await Redis calls (e.g., await app.redis.set(...)).","message":"app.redis is an ioredis instance; all ioredis methods are available but must be used asynchronously.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'3.0.0':19 'app':53 'app.redis':17 'autom':48 'cadenc':55 'compar':40 'configur':12,26 'connect':24,49 'direct':44 'ecosystem':61 'framework':9 'instanc':14 'integr':32 'ioredi':13,21,30,43 'irregular':57 'javascript':63 'lifecycl':37 'log':39 'manag':50 'match':29 'mount':15 'option':31 'plugin':5 'provid':10 'redi':3,4,23,47,64 'redis.json':28 'releas':54 'seamless':33 'spawnpoint':2,8,35,46,52,60,65 'spawnpoint-redi':1,45 'tie':58 'updat':62 'use':42 'version':18 'via':27 'within':51 'wrap':20","created_at":"2026-06-07T12:59:49.675975+00:00","updated_at":"2026-06-07T12:59:49.675975+00:00","problems":[{"fix":"Convert your project to ESM (add \"type\": \"module\" to package.json) or use dynamic import() instead of require().","cause":"Version 3+ is ESM-only but you are using CommonJS require().","error":"Error [ERR_REQUIRE_ESM]: require() of ES Module /path/node_modules/spawnpoint-redis/index.js from /path/app.js not supported."},{"fix":"Ensure spawnpointRedis is loaded as a plugin and Redis operations are inside app.ready().","cause":"Plugin not fully initialized; app.redis is undefined or not yet an ioredis instance.","error":"TypeError: app.redis.set is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/nodecraft/spawnpoint-redis#readme","github":"https://github.com/nodecraft/spawnpoint-redis","docs":null,"changelog":null,"pypi":null,"npm":"spawnpoint-redis","openapi_spec":null,"status_page":null,"smithery":null,"categories":["storage"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}