Mini-Redis

A blazingly fast, lightweight in-memory key-value store built with TypeScript and Bun

Why Mini-Redis?

Lightning Fast

In-memory storage with optimized data structures for blazing fast operations

🔧

Redis Compatible

Supports 20+ Redis commands including strings, lists, and TTL operations

🐳

Docker Ready

Run with a single Docker command on port 6379, just like real Redis

📦

Lightweight

Minimal dependencies, powered by Bun for maximum performance

🔄

Multiple Data Types

Support for strings, lists with automatic type detection

TTL Support

Automatic expiration with background cleanup worker

💾

Data Persistence

AOF (Append-Only File) persistence ensures data survives restarts and crashes

Quick Start

Get up and running in seconds with Docker

docker run -d -p 6379:6379 -v redis-data:/app/storage --name mini-redis ghcr.io/saman-dev12/mini-redis:latest
1

Pull & Run

Start the Mini-Redis server with a single Docker command. The image will be automatically pulled from GitHub Container Registry. Data persists in the redis-data volume.

2

Connect

Connect to the server using: docker exec -it mini-redis bun run test.ts

3

Start Using

Use Redis commands like SET, GET, LPUSH, INCR and more!

Supported Commands

SET GET DEL EXISTS INCR DECR LPUSH RPUSH LPOP RPOP LRANGE TTL EXPIRE TYPE KEYS