node-redis is a Redis client for Node.js that provides modern, high-performance access to Redis servers from JavaScript and TypeScript applications.
The tool solves the problem of connecting Node.js applications to Redis instances and executing Redis commands. It exposes all standard Redis commands in both raw form (matching Redis command names like HSET) and camelCase variants (like hSet) for convenience. The client handles connection management, including support for connection strings, discrete parameters, UNIX sockets, and TLS encryption. It transforms Redis replies into useful JavaScript data structures and supports working with Buffers. The project is distributed as a modular package system where the base redis package includes all Redis Stack modules, but developers can install individual packages like @redis/json, @redis/search, @redis/bloom, @redis/time-series, and @redis/entraid if they only need specific command sets.
Developers should choose this tool if they need a straightforward, officially-maintained Redis client for Node.js applications. It suits projects ranging from simple key-value caching to complex applications using Redis Stack modules for JSON storage, full-text search, time-series data, or probabilistic data structures. The README mentions redis-om-node as a complementary high-level library for object mapping if that abstraction level is needed.
The project maintains a substantial base of real-world adopters, as evidenced by the fact that nearly all open issues come from external users rather than the core team. Maintainers typically respond to new issues and pull requests within a day. Work in the issue tracker centers on bugs, documentation, and feature requests.