TMInnovations / nestjs-redis

Redis(ioredis) module for NestJS framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nest Logo

Redis(ioredis) module for NestJS framework.

NPM Version Package License NPM Downloads Package Vulnerabilities

Features πŸš€

  • Both redis & cluster are supported: You can also specify multiple clients.
  • Health: Checks health of redis & cluster server.
  • Rigorously tested: With 130+ tests and 100% code coverage.
  • Decorators: Injects redis/cluster client via @InjectRedis() and @InjectCluster().
  • Services: Retrieves redis/cluster client via RedisService and ClusterService.

Test coverage 🧐

Statements Branches Functions Lines
Statements Branches Functions Lines

Documentation

Deprecated

Prerequisites

Install

This package supports both nestjs 7.x and 8.x.

$ npm install --save @liaoliaots/nestjs-redis ioredis
$ yarn add @liaoliaots/nestjs-redis ioredis

Test a class

This package exports getRedisToken() and getClusterToken() functions that return an internal injection token based on the provided context. Using this token, you can provide a mock implementation of the redis/cluster client using any of the standard custom provider techniques, including useClass, useValue, and useFactory.

const module: TestingModule = await Test.createTestingModule({
    providers: [{ provide: getRedisToken('namespace'), useValue: mockedClient }, YourService]
}).compile();

A working example is available here.

Future

    • COMMAND: SELECT
    • Microservice strategy

Package dependency overview

Author

πŸ‘€ LiaoLiao

🀝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

πŸ“ License

This project is MIT licensed.

About

Redis(ioredis) module for NestJS framework

License:MIT License


Languages

Language:TypeScript 98.3%Language:JavaScript 1.5%Language:Shell 0.1%