Navigate:
ioredis
~$IORED0.0%

ioredis: Redis client library for Node.js

Robust TypeScript Redis client supporting clusters and Sentinel.

LIVE RANKINGS • 12:32 PM • STEADY
OVERALL
#410
23
BACKEND & APIS
#23
30 DAY RANKING TREND
ovr#410
·Backe#23
STARS
15.2K
FORKS
1.2K
7D STARS
+6
7D FORKS
-1
See Repo:
Share:

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.

ioredis

1

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.

2

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.

3

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();

vv5.9.2

This release fixes cluster reconnection for sharded subscribers and addresses replica slot handling in pipelines.

  • cluster: Cluster reconnect sharded subscribers
  • preserve replica slots on MOVED in pipelines
  • Revert preserve replica slots on MOVED in pipelines
vv5.9.1

This release makes client-side blocking timeouts opt-in rather than default behavior.

  • make client-side blocking timeouts opt-in
vv5.9.0

This release removes case-sensitivity in command handling, adds timeout support for blocking commands, and refactors sharded pub/sub.

  • remove unnecessary case-sensitivity when working with commands
  • add timeout blocking commands
  • cluster: refactor sharded pub/sub v5


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers