tekir
All Packages
Databasev0.1.4

@tekir/redis

Redis client with pub/sub, pipeline, and multi-connection support.

Installation

$bun add @tekir/redis

Features

  • String, hash, set, and sorted set operations
  • Pub/sub with subscribe and publish
  • Key prefix support for namespacing
  • Auto-reconnect with configurable retries
  • RedisManager for multiple named connections

Quick Example

TypeScript
import { Redis } from '@tekir/redis'

const redis = new Redis({ url: 'redis://localhost:6379' })

await redis.set('key', 'value')
const val = await redis.get('key')
await redis.expire('key', 3600)

Changelog

v0.1.4LatestSeptember 16, 2026
  • Published output now uses the shared Node-targeted ESM bundle pipeline with external dependencies and generated TypeScript declarations, while Bun consumers keep the native source export.
v0.1.3July 23, 2026
  • Package metadata now follows the shared compatible 0.1.x dependency range used by this coordinated Tekir release.
v0.1.2July 16, 2026
  • Distributed locks are released only by their owner through an atomic compare-and-delete operation, and connection/manager cleanup paths are more defensive.
v0.1.1June 13, 2026
  • New clearPrefix() deletes only this connection's <prefix>:* keys (and deletes nothing when no prefix is set). flushdb() is now flagged as dangerous and points at the safer alternative.
  • remember() now takes a short-lived SET NX EX lock so concurrent callers wait for one computation instead of stampeding, and setJSON() with a TTL uses a single atomic SET ... EX so a crash can no longer leave a key without its TTL.
  • Connecting over plaintext in production now logs a warning, and credentials in the connection URL are masked in logs.
  • getJSON parse failures now log a warning with the key name (return stays null), and send()/subscribe() document that they are advanced and that incoming messages must be treated as untrusted.
  • Found and fixed with Fable.
v0.1.0April 1, 2026
  • Initial release

Other Database packages