2.0.1 • Published 8 months ago
redis-extension v2.0.1
Redis Extension 🍬
This a library, which provides additional features to the redis client library.
Table of Contents
Installation
npm install redis-extension --save
Features
- ️️🕵️♀️ Watcher - Watch for specific events
- 🏆 ScoreBoard - Store keys by score.
- 🔌 JsonAdapter - Stringify value as json string on set and parse on get
Usage
Watcher
import {
Watcher,
createClient
} from "redis-extension";
const client = createClient();
client.set('foo', 'bar', 'PX', '500');
const watcher = new Watcher(client, {
pattern: 'foo*',
});
// Register events
watcher.on('expire', (key) => {
console.log(key);
// foo
});
// Start watching
await watcher.start();
ScoreBoard
import {
createClient,
ScoreBoard,
} from "redis-extension";
const client = createClient();
const scoreBoard = new ScoreBoard(client, {
key: 'users-online'
});
// add user with id: 1 to the stack (time: 1642423766)
scoreBoard.add(1);
// add user with id: 2 to the stack (time: 1642423866)
scoreBoard.add(2);
const output = scoreBoard.get({
sort: 'DESC'
});
console.log(output);
// {
// data: [
// {id: 1, score: 1642423766},
// {id: 2, score: 1642423866}
// ],
// meta: {
// total: 2
// }
// }
The score
property represents the unix timestamp by default if it has not been set otherwise.
JsonAdapter
import {
JsonAdapter,
createClient
} from "redis-extension";
const client = createClient();
const jsonAdapter = new JsonAdapter(client);
await jsonAdapter.set('51f3509d-871b-48ad-af15-d1c9eb941362', {
name: 'admin',
// ...
});
const payload = jsonAdapter.get('51f3509d-871b-48ad-af15-d1c9eb941362');
console.log(payload);
// { name: 'admin', ... }
License
Made with 💚
Published under MIT License.
2.0.1
8 months ago
2.0.0
10 months ago
1.5.0
1 year ago
1.4.0
1 year ago
1.3.1
1 year ago
1.2.4
2 years ago
1.2.3
2 years ago
1.2.2
2 years ago
1.3.0
2 years ago
1.2.1
2 years ago
1.2.0
3 years ago
1.1.1
3 years ago
1.0.2
3 years ago
1.1.0
3 years ago
1.0.3
3 years ago
1.0.1
3 years ago
1.0.0
3 years ago
1.0.0-4
3 years ago
1.0.0-3
3 years ago
1.0.0-2
3 years ago
1.0.0-1
3 years ago
1.0.0-0
3 years ago
0.0.9
3 years ago
0.0.8
3 years ago
0.0.7
3 years ago
0.0.6
3 years ago
0.0.5
3 years ago
0.0.4
3 years ago
0.0.3
3 years ago
0.0.2
3 years ago
0.0.1
3 years ago