{"id":45167,"library":"iovalkey","title":"iovalkey","description":"A robust, performance-focused Valkey/Redis client for Node.js, based on ioredis. Current stable version is 0.3.3. It is a friendly fork of ioredis after a specific commit, supporting Valkey >= 2.6.12 and fully compatible with Valkey 7.x. Key differentiators: full cluster and sentinel support, streams, pipelining, Lua scripting, Valkey Functions, pub/sub, TLS, offline queue, autopipelining, and NAC mapping. Written in TypeScript with bundled type declarations. Release cadence: actively maintained with frequent updates. It provides a drop-in replacement for ioredis with similar API.","status":"active","version":"0.3.3","language":"javascript","source_language":"en","source_url":"git://github.com/valkey-io/iovalkey","tags":["javascript","valkey","redis","cluster","sentinel","pipelining","typescript"],"install":[{"cmd":"npm install iovalkey","lang":"bash","label":"npm"},{"cmd":"yarn add iovalkey","lang":"bash","label":"yarn"},{"cmd":"pnpm add iovalkey","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"iovalkey is a fork of ioredis; some internal code and API patterns match ioredis","package":"ioredis","optional":true}],"imports":[{"note":"Named import is the recommended way in TypeScript projects. CommonJS require works but may cause type issues.","wrong":"const Valkey = require('iovalkey')","symbol":"Valkey","correct":"import { Valkey } from 'iovalkey'"},{"note":"Default import is still supported but will be deprecated in next major version. Use named import instead.","wrong":"import { default as Valkey } from 'iovalkey'","symbol":"default import of Valkey","correct":"import Valkey from 'iovalkey'"},{"note":"Pipeline is a named export, not a default export. TypeScript users should use type imports for type assertions.","wrong":"import Pipeline from 'iovalkey'","symbol":"Pipeline","correct":"import { Pipeline } from 'iovalkey'"}],"quickstart":{"code":"const Valkey = require('iovalkey'); // or import { Valkey } from 'iovalkey'\nconst client = new Valkey(); // connect to localhost:6379\n\nasync function quickstart() {\n  await client.set('mykey', 'value');\n  const val = await client.get('mykey');\n  console.log(val); // 'value'\n\n  // pipeline example\n  const pipeline = client.pipeline();\n  pipeline.set('key1', 'val1');\n  pipeline.get('key1');\n  const results = await pipeline.exec(); // [[null, 'OK'], [null, 'val1']]\n  console.log(results);\n\n  client.disconnect();\n}\nquickstart();","lang":"javascript","description":"Basic setup with iovalkey, set/get a key, and pipeline example."},"warnings":[{"fix":"Use named import: import { Valkey } from 'iovalkey'","message":"Default import (import Valkey from 'iovalkey') is deprecated and will be removed in the next major version.","severity":"deprecated","affected_versions":">=0.1.0"},{"fix":"Update Node.js to >= 18.12.0","message":"iovalkey requires Node.js >= 18.12.0. Older versions are not supported.","severity":"breaking","affected_versions":">=0.3.0"},{"fix":"Test plugins with iovalkey; consider using native alternatives.","message":"The package is a fork of ioredis; some ioredis plugins may not be compatible.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.3.3':18 '2.6.12':32 '7':38 'activ':70 'api':86 'autopipelin':57 'base':11 'bundl':65 'cadenc':69 'client':8 'cluster':43,90 'commit':29 'compat':35 'current':14 'declar':67 'differenti':41 'drop':79 'drop-in':78 'focus':6 'fork':23 'frequent':73 'friend':22 'full':42 'fulli':34 'function':52 'ioredi':13,25,83 'iovalkey':1 'javascript':87 'key':40 'lua':49 'maintain':71 'map':60 'nac':59 'node.js':10 'offlin':55 'perform':5 'performance-focus':4 'pipelin':48,92 'provid':76 'pub/sub':53 'queue':56 'redi':89 'releas':68 'replac':81 'robust':3 'script':50 'sentinel':45,91 'similar':85 'specif':28 'stabl':15 'stream':47 'support':30,46 'tls':54 'type':66 'typescript':63,93 'updat':74 'valkey':31,37,51,88 'valkey/redis':7 'version':16 'written':61 'x':39","created_at":"2026-06-07T12:53:41.938481+00:00","updated_at":"2026-06-07T12:53:41.938481+00:00","problems":[{"fix":"Run: npm install iovalkey","cause":"Package not installed or incorrect import path.","error":"Error: Cannot find module 'iovalkey'"},{"fix":"Use: import { Valkey } from 'iovalkey'; const client = new Valkey();","cause":"Using default import incorrectly in TypeScript (import Valkey from 'iovalkey') which returns a constructor, not an instance.","error":"TypeError: valkey.get 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/valkey-io/iovalkey#readme","github":"git://github.com/valkey-io/iovalkey","docs":null,"changelog":null,"pypi":null,"npm":"iovalkey","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database","devops"],"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}}