Skip to content

Redis 8.x compatible. Memory-first. Built in Rust.

FrogDB is an in-memory database written in Rust. It implements RESP2 and RESP3, targets compatibility with Redis 8.x commands, supports replication and cluster mode, and stores data with RocksDB-backed persistence — shipped as a single binary.

Redis compatible

Implements RESP2 and RESP3 and targets compatibility with Redis 8.x commands, so existing Redis clients connect unchanged. See the compatibility overview for behavioral deltas and the command matrix for per-command status.

Persistent storage

RocksDB-backed persistence with configurable durability modes, plus optional two-tier hot/warm storage (off by default).

Operations

Prometheus metrics and OTLP export (observability), an HTTP debug UI and diagnostic bundles (diagnostics), and the frogctl and frogdb-admin management CLIs.

Tested for correctness

Randomized concurrency simulation, network fault injection, Jepsen distributed testing, fuzzing, and ported Redis regression suites. See Testing methodology for the full picture.

Built with Rust

Memory-safe, compiled to a single self-contained binary.

FrogDB implements the core Redis data types along with several extension command families. Consult the command matrix for the exact supported / partial / unsupported status of any individual command.

Core Redis types

  • Strings, Lists, Sets, Sorted Sets, Hashes
  • Streams
  • Bitmaps and Bitfields
  • Geospatial (geohash indexing and distance queries)
  • Pub/Sub (channel and pattern-based)
  • Scripting (Lua) and Transactions (MULTI/EXEC)

Extension families — see the Extensions overview. These are Redis-Stack-compatible except Event Sourcing, which is FrogDB-original:

  • JSON — document storage with JSONPath
  • Time Series — compressed time series with aggregation and downsampling
  • Search (FT.*) — full-text search, secondary indexing, and vector search
  • Probabilistic — Bloom filters, Cuckoo filters, Count-Min Sketch, Top-K, T-Digest
  • Vector Sets — approximate nearest-neighbor search
  • Event Sourcing (ES.*) — FrogDB-original; see Extensions → Event Sourcing

Compatibility and correctness are established by evidence, not assertion. FrogDB is exercised by a layered test strategy: unit and integration tests, Shuttle randomized concurrency simulation, Turmoil network simulation, Jepsen (Knossos/Elle) testing of replication and Raft-cluster topologies, cargo-fuzz targets across input paths, ported Redis regression suites, and history-based consistency checking.

For what each layer covers and how the results are produced, see Testing methodology and the generated command matrix and test suite results.

Terminal window
# Start FrogDB
frogdb-server --port 6379
# Connect with redis-cli
redis-cli -p 6379
# Use familiar Redis commands
127.0.0.1:6379> SET greeting "Hello from FrogDB!"
OK
127.0.0.1:6379> GET greeting
"Hello from FrogDB!"

The Quickstart is the full walkthrough.