awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Redis-Style Key-Value Store Implementations

Ranking updated Jun 30, 2026

For a project for learning in-memory stores by building one, the first results are redis-windows/redis-windows, redis/redis and dragonflydb/dragonfly. valkey-io/valkey and tporadowski/redis round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

Explore open-source projects that implement custom key-value storage engines inspired by the Redis data structure architecture.

Redis-Style Key-Value Store Implementations

Find the best repos with AI.We'll search the best matching repositories with AI.
  • redis-windows/redis-windowsredis-windows avatar

    redis-windows/redis-windows

    3,485View on GitHub↗

    This project is a native Windows port of the Redis in-memory key-value store. It provides a high-speed database that maintains datasets in RAM while using periodic snapshots to disk for data persistence. The implementation includes a background system service wrapper, allowing the data store to be installed as a Windows service that starts automatically upon computer boot. It utilizes native Windows compilation to enable execution directly on the host operating system. The system covers in-memory data caching and local data persistence, ensuring that information is recovered after a process

    This repository IS the official Redis ported to run natively on Windows, so it provides the full Redis feature set (in-memory storage, TCP protocol, strings and lists, snapshot persistence, key expiration, and a command-line client) — exactly what you need to learn or deploy a self-contained Redis‑like store.

    BatchfileIn-Memory Data StoresIn-Memory Data Stores
    View on GitHub↗3,485
  • redis/redisredis avatar

    redis/redis

    74,906View on GitHub↗

    Redis is an in-memory, key-value database designed to provide sub-millisecond latency for read and write operations. It functions as a versatile data platform, serving as a distributed cache, a message broker, a NoSQL document store, and a vector database. The system utilizes an event-driven, single-threaded loop to process requests efficiently, while maintaining data durability through append-only persistence logs and asynchronous snapshotting mechanisms. What distinguishes Redis is its ability to handle complex data structures—including strings, hashes, lists, sets, and sorted sets—alongsid

    Redis is the canonical open-source in-memory key-value store, implementing every feature listed — in-memory storage, TCP protocol, strings and lists, persistence (AOF/snapshots), key expiration, and its own command-line client — so it is the definitive reference for learning or building a Redis-like system.

    CAppend-Only PersistenceIn-Memory Data StoresKey Expiration Policies
    View on GitHub↗74,906
  • dragonflydb/dragonflydragonflydb avatar

    dragonflydb/dragonfly

    30,688View on GitHub↗

    Dragonfly is a high-performance, multi-model in-memory data store designed to serve as a drop-in replacement for existing database infrastructures. By utilizing a multi-threaded, shared-nothing architecture and a fiber-based concurrency model, it maximizes CPU utilization and minimizes latency for read and write operations. The system supports a wide range of data structures, including strings, hashes, lists, sets, sorted sets, and JSON documents, while maintaining full compatibility with standard industry wire protocols and client libraries. What distinguishes Dragonfly is its focus on effic

    Dragonfly is a fully compatible, high-performance Redis alternative with all the features you asked for (in-memory, TCP, strings/lists, persistence, TTL, ready client), making it a comprehensive flagship in the category—though if you specifically want a minimal educational implementation, a simpler dedicated project might be easier to study.

    C++In-Memory DatabasesList Data StructuresString Data Structures
    View on GitHub↗30,688
  • valkey-io/valkeyvalkey-io avatar

    valkey-io/valkey

    24,875View on GitHub↗

    Valkey is an in-memory, NoSQL database server designed for high-performance data storage and real-time state management. It operates as a distributed key-value store, maintaining datasets entirely within system memory to facilitate sub-millisecond response times for read and write operations. The system distinguishes itself through a single-threaded event loop that utilizes asynchronous I/O multiplexing to ensure high throughput. It supports high availability via master-replica replication and provides a decoupled communication model through a built-in publish-subscribe messaging pattern. To

    Valkey is a Redis-compatible in-memory key-value store that supports in-memory storage, TCP networking, strings/lists, persistence (RDB/AOF), key expiration, and a command-line client, making it a direct fit for learning or implementing a Redis-like data store.

    CIn-Memory Data StoresIn-Memory Databases
    View on GitHub↗24,875
  • tporadowski/redistporadowski avatar

    tporadowski/redis

    9,987View on GitHub↗

    Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations

    This is a native Windows port of Redis, the definitive in-memory key-value store, directly matching your intent to learn or implement a Redis-like system with TCP networking, string/list support, persistence (snapshot/AOF), key expiration, and a command-line client.

    CAppend-Only PersistenceData SnapshottingIn-Memory Data Stores
    View on GitHub↗9,987
  • snapchat/keydbSnapchat avatar

    Snapchat/KeyDB

    12,487View on GitHub↗

    KeyDB is a multithreaded in-memory key-value store and distributed cache. It functions as a NoSQL database utilizing multi-version concurrency control to execute non-blocking queries and scans. The project is a multithreaded fork of Redis that maintains protocol compatibility while utilizing a multithreaded architecture to scale across multi-core hardware. It distinguishes itself with flash-tiered storage, allowing the system to offload data from primary RAM to SSD or flash storage to increase total capacity. The system supports high availability through active-active mesh replication and mu

    KeyDB is a multithreaded, Redis-compatible in-memory key-value store that covers all the requested features—in-memory storage, TCP protocol, strings/lists, persistence, TTL, and a CLI—making it squarely the kind of tool the visitor is looking for, though its production-grade complexity may exceed what a purely educational project needs.

    C++In-Memory Data Stores
    View on GitHub↗12,487
  • microsoft/garnetmicrosoft avatar

    microsoft/garnet

    11,885View on GitHub↗

    Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar

    Garnet is a production-grade, multi-threaded in-memory key-value store that implements the RESP protocol for full Redis-client compatibility, making it a real-world example of exactly the kind of system described; it covers in-memory storage, TCP networking, support for strings and lists, persistence, and key expiration, though its complexity may be more than a minimal educational implementation.

    C#Append-Only PersistenceIn-Memory Databases with Persistence
    View on GitHub↗11,885
  • antirez/redisantirez avatar

    antirez/redis

    109View on GitHub↗

    This document serves as both a quick start guide to Redis and a detailed resource for building it from source.

    This is the original Redis source code, the flagship in-memory key-value store that implements all the features you asked about—in-memory storage, TCP protocol, string/list types, persistence, TTL, and a built-in command-line client—making it the perfect reference for learning or building a Redis-like system.

    CDatabase EnginesKey-Value StoresSponsored Projects
    View on GitHub↗109
  • dicedb/diceDiceDB avatar

    DiceDB/dice

    10,760View on GitHub↗

    Dice is a low-latency key-value store based on Valkey that functions as a hierarchical storage engine. It combines a high-speed memory store with a tiered cache system to manage data across multiple storage levels. The system extends memory capacity by implementing a disk-backed cache that automatically persists evicted items to disk and restores them during cache misses. This storage tiering balances retrieval speed and operational cost by distributing data between fast memory and slower disk storage. The engine includes a query subscription service that monitors specific data patterns and

    Dice is a Redis-compatible key-value store with in-memory storage, disk persistence, and hierarchical caching, which squarely fits the category of an in‑memory key‑value store like Redis—though its tiered storage design makes it a more advanced implementation than a minimal educational clone.

    CStorage TieringData Change NotificationsData Change Subscriptions
    View on GitHub↗10,760
  • olric-data/olricolric-data avatar

    olric-data/olric

    3,469View on GitHub↗

    Olric is a distributed data grid and in-memory key-value store that partitions and replicates data across a cluster of servers. It serves as a shared memory system for managing distributed maps, performing atomic operations, and acting as an in-memory data cache. The system provides a distributed locking mechanism for concurrency control and a pub-sub messaging system that broadcasts and routes messages over named channels across the cluster. The platform covers wide-ranging capabilities including cluster management and orchestration, data replication with configurable quorums, and automated

    Olric is a distributed in-memory key-value store that supports many Redis-like features (TCP, persistence, TTL, a command interface), but its focus on clustering and replication makes it more complex than the self-contained, single-node implementation you'd likely use for learning.

    GoDistributed Data ManagementDistributed Key-Value StoresDistributed Key-Value Stores
    View on GitHub↗3,469
  • louischatriot/nedblouischatriot avatar

    louischatriot/nedb

    13,540View on GitHub↗

    NeDB is a JavaScript embedded NoSQL document store designed for Node.js and the browser. It functions as an in-memory data store with the option to persist documents to a local file system, ensuring data survives application restarts. The project utilizes a MongoDB-compatible API to perform data operations, allowing it to serve as a lightweight document indexing system and a persistent file database without requiring a separate database server. Capabilities include querying, inserting, updating, and deleting documents, as well as the ability to create indexes on specific fields to accelerate

    NeDB is an embedded document store with a MongoDB-like API, not a Redis-style in-memory key-value store; it lacks TCP networking, key-value operations on strings/lists, and a command-line client.

    JavaScriptIn-Memory Data StoresIn-Memory DatabasesAppend-Only Storage Engines
    View on GitHub↗13,540
  • yuesong-feng/30daymakecppserveryuesong-feng avatar

    yuesong-feng/30dayMakeCppServer

    7,040View on GitHub↗

    This project is a C++ TCP server framework and educational socket programming guide. It provides a high-performance network library focused on event-driven architecture, implementing a reactor pattern to handle thousands of simultaneous client connections. The framework is distinguished by its multi-threaded event loop, which utilizes a main-sub reactor coordination model to distribute network events across a worker thread pool. It includes an abstraction layer for non-blocking socket I/O and event multiplexing via the epoll system call, decoupling network transport from application business

    This repo is a C++ TCP server framework and educational socket programming guide with a reactor pattern, not an in-memory key-value store like Redis; it provides a building block for writing servers rather than implementing key-value storage, persistence, or the Redis protocol itself.

    C++Socket NetworkingTCP Server FrameworksNetwork Socket Bindings
    View on GitHub↗7,040
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
redis-windows/redis-windows3.5KBatchfileapache-2.0Feb 10, 2026
redis/redis74.9KCNOASSERTIONJun 16, 2026
dragonflydb/dragonfly
30.7K
C++
NOASSERTION
Jun 16, 2026
valkey-io/valkey24.9KCotherFeb 19, 2026
tporadowski/redis10KCotherApr 2, 2023
snapchat/keydb12.5KC++BSD-3-ClauseMay 29, 2024
microsoft/garnet11.9KC#MITJun 23, 2026
antirez/redis109CNOASSERTIONMay 13, 2026
dicedb/dice10.8KCNOASSERTIONApr 23, 2026
olric-data/olric3.5KGoApache-2.0Jun 12, 2026

Related searches

  • a self-hosted Redis-style data store
  • a project for understanding databases by building one
  • a fast in-memory cache store
  • an embedded key-value store for local persistence
  • a project for learning containers from first principles
  • a project for learning Git by reimplementing it
  • an MCP server for interacting with Redis
  • a caching library for Go applications