{"id":44875,"library":"expeditious-engine-redis","title":"Expeditious Engine Redis","description":"A Redis storage engine for the expeditious caching library, version 0.1.2. It stores cache entries in a Redis instance, providing a scalable backend for Node.js caching needs. The package is part of the expeditious ecosystem, allowing easy switching between cache engines. It implements the expeditious engine interface with methods like set, get, del, ttl, flush, and keys. Requires Node >= 4.4 and the redis package. Compared to in-memory engines, it enables shared, persistent caching across multiple processes or servers. Development appears to be low activity (few releases) and is used in production but may not be actively maintained.","status":"active","version":"0.1.2","language":"javascript","source_language":"en","source_url":"https://github.com/evanshortiss/expeditious-engine-redis","tags":["javascript","expeditious","engine","cache","redis","express-expeditious","express"],"install":[{"cmd":"npm install expeditious-engine-redis","lang":"bash","label":"npm"},{"cmd":"yarn add expeditious-engine-redis","lang":"bash","label":"yarn"},{"cmd":"pnpm add expeditious-engine-redis","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Required for Redis client operations","package":"redis","optional":false}],"imports":[{"note":"The module exports a factory function that takes options, not a constructor.","wrong":"const engine = require('expeditious-engine-redis'); // without calling as a function","symbol":"expeditious-engine-redis","correct":"const engineFactory = require('expeditious-engine-redis'); const engine = engineFactory({redis: {host: 'localhost', port: 6379}});"},{"note":"CommonJS only, no ESM support. Use require().","wrong":"import expeditious from 'expeditious'; // older Node.js versions without ESM","symbol":"expeditious","correct":"const expeditious = require('expeditious');"},{"note":"The module exports a single function as default, not as named export.","wrong":"const { engineFactory } = require('expeditious-engine-redis'); // not a named export","symbol":"engineFactory","correct":"const engineFactory = require('expeditious-engine-redis');"}],"quickstart":{"code":"const expeditious = require('expeditious');\nconst engineFactory = require('expeditious-engine-redis');\n\nconst cache = expeditious({\n  engine: engineFactory({redis: {host: 'localhost', port: 6379}}),\n  namespace: 'myapp',\n  objectMode: true,\n  defaultTtl: 60000 // 1 minute\n});\n\ncache.set({ key: 'user:1', value: { name: 'Alice' } }, (err) => {\n  if (err) console.error('Set error', err);\n  else cache.get({ key: 'user:1' }, (err, result) => {\n    console.log(result); // { name: 'Alice' }\n  });\n});","lang":"javascript","description":"Setup and usage of expeditious with Redis engine: initialize engine, create cache instance, set and get a value."},"warnings":[{"fix":"Pass redis connection options as {redis: {host, port, ...}} or use redis.createClient options.","message":"The engine factory expects options.redis object (host, port, etc.) not a Redis client instance.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Avoid using keys() method in production. Use SCAN if needed.","message":"The keys() method uses Redis KEYS which is O(N) and should not be used in production.","severity":"deprecated","affected_versions":">=0.0.0"},{"fix":"Update code from `const engine = require('expeditious-engine-redis');` to `const engine = require('expeditious-engine-redis')({redis: options});`","message":"The require() pattern changed: v0.1.0+ requires calling the exported function.","severity":"breaking","affected_versions":"<0.1.0"}],"env_vars":null,"search_vec":"'0.1.2':14 '4.4':63 'across':79 'activ':89,101 'allow':39 'appear':85 'backend':26 'cach':11,17,29,43,78,106 'compar':68 'del':56 'develop':84 'easi':40 'ecosystem':38 'enabl':75 'engin':2,7,44,49,73,105 'entri':18 'expediti':1,10,37,48,104,110 'express':109,111 'express-expediti':108 'flush':58 'get':55 'implement':46 'in-memori':70 'instanc':22 'interfac':50 'javascript':103 'key':60 'librari':12 'like':53 'low':88 'maintain':102 'may':98 'memori':72 'method':52 'multipl':80 'need':30 'node':62 'node.js':28 'packag':32,67 'part':34 'persist':77 'process':81 'product':96 'provid':23 'redi':3,5,21,66,107 'releas':91 'requir':61 'scalabl':25 'server':83 'set':54 'share':76 'storag':6 'store':16 'switch':41 'ttl':57 'use':94 'version':13","created_at":"2026-06-07T12:52:16.107007+00:00","updated_at":"2026-06-07T12:52:16.107007+00:00","problems":[{"fix":"Change `const engine = require('expeditious-engine-redis');` to `const engine = require('expeditious-engine-redis')({redis: {host: 'localhost', port: 6379}});`","cause":"Missing call to the factory function when using require.","error":"TypeError: engine is not a function"},{"fix":"Ensure Redis is running and check host/port in options.","cause":"Redis server not running or incorrect connection options.","error":"Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED"},{"fix":"Verify that engineFactory returns a valid object and that expeditious is correctly called with engine option.","cause":"expeditious() call returned undefined due to invalid engine configuration.","error":"TypeError: Cannot read property 'set' of undefined"}],"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/evanshortiss/expeditious-engine-redis#readme","github":"https://github.com/evanshortiss/expeditious-engine-redis","docs":null,"changelog":null,"pypi":null,"npm":"expeditious-engine-redis","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"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}}