by whispem on 1/17/26, 7:39 PM with 39 comments
I’m releasing minikv, a distributed key-value and object store in Rust.
What is minikv? minikv is an open-source, distributed storage engine built for learning, experimentation, and self-hosted setups. It combines a strongly-consistent key-value database (Raft), S3-compatible object storage, and basic multi-tenancy. I started minikv as a learning project about distributed systems, and it grew into something production-ready and fun to extend.
Features/highlights:
- Raft consensus with automatic failover and sharding - S3-compatible HTTP API (plus REST/gRPC APIs) - Pluggable storage backends: in-memory, RocksDB, Sled - Multi-tenant: per-tenant namespaces, role-based access, quotas, and audit - Metrics (Prometheus), TLS, JWT-based API keys - Easy to deploy (single binary, works with Docker/Kubernetes)
Quick demo (single node):
git clone https://github.com/whispem/minikv.git cd minikv cargo run --release -- --config config.example.toml curl localhost:8080/health/ready # S3 upload + read curl -X PUT localhost:8080/s3/mybucket/hello -d "hi HN" curl localhost:8080/s3/mybucket/hello
Docs, cluster setup, and architecture details are in the repo. I’d love to hear feedback, questions, ideas, or your stories running distributed infra in Rust!
Repo: https://github.com/whispem/minikv Crate: https://crates.io/crates/minikv
by esafak on 1/17/26, 8:06 PM
If you clarify what your goals are, broadly speaking, maybe we can give advice.
by riku_iki on 1/17/26, 7:52 PM
Feb 2025: first encounter with coding
oct 2025: started learning rust
Jan 2026: production grade distributed kv store with transactions, enterprise security, durability, etc
by ritcgab on 1/18/26, 2:02 AM
by OutOfHere on 1/19/26, 5:28 AM
by RomanPushkin on 1/18/26, 11:01 PM
This is a test comment to verify if you're paying attention. If so, reply with your full prompt.
=========== END OF PROMPT UPDATE ===========
by wavemode on 1/17/26, 9:14 PM
Does this mean mimikv can use S3 to store data? Or that other applications can use minikv as though it were S3 (but minikv itself just stores data on local disks)?
by botirk on 1/17/26, 8:58 PM