ioredis: Redis client library for Node.js
Robust TypeScript Redis client supporting clusters and Sentinel.
Learn more about ioredis
ioredis is a Redis client library for Node.js implemented entirely in TypeScript with native type declarations. It communicates with Redis servers using the RESP protocol and handles connection management, command queuing, and response parsing. The library supports multiple Redis deployment topologies including standalone instances, clusters, and sentinel-managed configurations. It is used in production environments and maintains compatibility with Redis versions 2.6.12 through current releases.
Native TypeScript Implementation
Written entirely in TypeScript with official type declarations included in the package. Provides full type safety without installing separate @types packages or manual type configuration.
Automatic Cluster Management
Handles Redis Cluster and Sentinel topologies with built-in node discovery, failover detection, and slot management. Automatically reconnects and reroutes commands during topology changes without manual intervention.
Dual Async Patterns
Supports both Node.js callbacks and native promises for the same commands. Integrates with existing callback-based code while enabling modern async/await patterns without API duplication.
import Redis from 'ioredis';
const redis = new Redis();
await redis.set('user:1000', 'John Doe');
const userName = await redis.get('user:1000');
console.log(userName);
await redis.quit();Fixes IP family selection defaulting and moves CLIENT SETINFO to connection handshake; no breaking changes.
- –IP family selection now defaults to 0 (dual-stack) instead of prior behavior, resolving connection issues in mixed IPv4/IPv6 environments.
- –CLIENT SETINFO commands execute during handshake rather than post-connection, improving client metadata visibility in Redis server logs.
Patch release fixing sharded pub/sub re-subscription behavior after reconnection.
- –Fixes sharded pub/sub channels now re-subscribe individually instead of in bulk after disconnect.
- –No breaking changes or new requirements; safe drop-in upgrade for existing v5.8.x deployments.
Adds new Redis 7.4+ commands (XDELEX, HPEXPIRE, CLIENT SETINFO) and fixes sharded pubsub re-subscription on reconnect.
- –Use XDELEX for stream entry deletion, HPEXPIRE for hash field expiration, and CLIENT SETINFO for client metadata.
- –Sharded pubsub channels now re-subscribe individually on reconnect, preventing subscription loss after connection drops.
See how people are using ioredis
Top in Data Engineering
Related Repositories
Discover similar tools and frameworks used by developers
docling
Fast document parser for RAG and AI workflows.
drizzle-orm
Lightweight type-safe SQL query builder for TypeScript.
n8n
Node-based automation platform with JavaScript and Python scripting.
flyway
Version-controlled SQL migrations with automated execution tracking.
patroni
Automates PostgreSQL failover using distributed consensus systems.