Skip to content

redis client with typescript and esnext for nodejs

License

Notifications You must be signed in to change notification settings

cBiscuitSurprise/tedis

 
 

Repository files navigation

tedis logo

travis issues license package Coverage Status tag
pr release languages size commit

Supporting Tedis

Introduction

What is tedis

Tedis write with typescript, it's the client of redis for nodejs, support async with ts and commonjs

Installation

yarn add tedis

Getting started

commonjs

const { Tedis, TedisPool } = require("tedis");

typescript

import { Tedis, TedisPool } from "tedis";
// no auth
const tedis = new Tedis({
  port: 6379,
  host: "127.0.0.1"
});

// auth
const tedis = new Tedis({
  port: 6379,
  host: "127.0.0.1",
  password: "your_password"
});

tls

const tedis = new Tedis({
  port: 6379,
  host: "127.0.0.1",
  tls: {
    key: fs.readFileSync(__dirname + "/client_server/client_key.pem"),
    cert: fs.readFileSync(__dirname + "/client_server/client_cert.pem")
  }
});

TedisPool

// no auth
const pool = new TedisPool({
  port: 6379,
  host: "127.0.0.1"
});

// auth
const pool = new TedisPool({
  port: 6379,
  host: "127.0.0.1",
  password: "your_password"
});
const tedis = await pool.getTedis();
// ... do some commands
pool.putTedis(tedis);

tls

const tedis = new TedisPool({
  port: 6379,
  host: "127.0.0.1",
  tls: {
    key: fs.readFileSync(__dirname + "/client_server/client_key.pem"),
    cert: fs.readFileSync(__dirname + "/client_server/client_cert.pem")
  }
});

Example

/**
 * core
 */
await tedis.command("SET", "key1", "Hello");
// "OK"
await tedis.command("SET", "key2", "World");
// "OK"

/**
 * key
 */
await tedis.keys("*");
// []
await tedis.exists("a");
// 0

/**
 * string
 */
await tedis.set("mystring", "hello");
// "OK"
await tedis.get("mystring");
// "hello"

/**
 * hash
 */
await tedis.hmset("myhash", {
  name: "tedis",
  age: 18
});
// "OK"
await tedis.hgetall("myhash");
// {
//   "name": "tedis",
//   "age": "18"
// }

/**
 * list
 */
await tedis.lpush("mylist", "hello", "a", "b", "c", "d", 1, 2, 3, 4);
// 9
await tedis.llen("mylist");
// 9

Type interface

base

pool

key

string

hash

list

set

zset

About

redis client with typescript and esnext for nodejs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 94.1%
  • JavaScript 5.6%
  • Shell 0.3%