fakeredis: A python implementation of Redis Protocol API
========================================================

[![badge](https://img.shields.io/pypi/v/fakeredis)](https://pypi.org/project/fakeredis/)
[![CI](https://github.com/cunla/fakeredis-py/actions/workflows/test.yml/badge.svg)](https://github.com/cunla/fakeredis-py/actions/workflows/test.yml)
[![badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/cunla/b756396efb895f0e34558c980f1ca0c7/raw/fakeredis-py.json)](https://github.com/cunla/fakeredis-py/actions/workflows/test.yml)
[![badge](https://img.shields.io/pypi/dm/fakeredis)](https://pypi.org/project/fakeredis/)
[![badge](https://img.shields.io/pypi/l/fakeredis)](./LICENSE)
[![Open Source Helpers](https://www.codetriage.com/cunla/fakeredis-py/badges/users.svg)](https://www.codetriage.com/cunla/fakeredis-py)
--------------------



Documentation is hosted in https://fakeredis.readthedocs.io/

# Intro

FakeRedis is a pure-Python implementation of the Redis Protocol API. It provides enhanced versions of
the [redis-py][redis-py]/[valkey-py][valkey-py] Python bindings for Redis.

It enables running tests requiring [Redis][redis]/[ValKey][valkey]/[DragonflyDB][dragonflydb]/[KeyDB][keydb] server
without an actual server.

It also enables testing compatibility of different key-value datastores.

That provides the following added functionality: A built-in Redis server that is automatically installed, configured and
managed when the Redis bindings are used. A single server shared by multiple programs or multiple independent servers.
All the servers provided by FakeRedis support all Redis functionality including advanced features such as RedisJson,
RedisBloom, GeoCommands.

See [official documentation][readthedocs] for list of supported commands.

# Sponsor

fakeredis-py is developed for free.

You can support this project by becoming a sponsor using [this link](https://github.com/sponsors/cunla).

[readthedocs]: https://fakeredis.readthedocs.io/

[redis-py]: https://github.com/redis/redis-py

[valkey]: https://github.com/valkey-io/valkey

[redis]: https://redis.io/

[dragonflydb]: https://dragonflydb.io/

[keydb]: https://docs.keydb.dev/

[valkey-py]: https://github.com/valkey-io/valkey-py
