30 releases (6 stable)
2.0.7 | Oct 22, 2023 |
---|---|
2.0.4 | May 23, 2023 |
1.0.1 | May 31, 2022 |
1.0.0 | Feb 22, 2022 |
0.5.0 | Oct 30, 2019 |
#152 in Database interfaces
14,943 downloads per month
Used in 5 crates
255KB
6K
SLoC
redismodule-rs
This crate provides an idiomatic Rust API for the Redis Modules API. It allows writing Redis modules in Rust, without needing to use raw pointers or unsafe code. See here for the most recent API documentation.
Running the example module
- Install Rust
- Install Redis, most likely using your favorite package manager (Homebrew on Mac, APT or YUM on Linux)
- Run
cargo build --example hello
- Start a redis server with the
hello
module- Linux:
redis-server --loadmodule ./target/debug/examples/libhello.so
- Mac:
redis-server --loadmodule ./target/debug/examples/libhello.dylib
- Linux:
- Open a Redis CLI, and run
HELLO.MUL 31 11
.
Writing your own module
See the examples directory for some sample modules.
This crate tries to provide high-level wrappers around the standard Redis Modules API, while preserving the API's basic concepts. Therefore, following the Redis Modules API documentation will be mostly relevant here as well.
Redis Modules based on this crate
The following are some modules that are built on this crate:
Several member of the community have written their own modules based on this.
Dependencies
~8–16MB
~237K SLoC