Rust made building a distributed DB fun – here’s Duva
Hey folks! 👋
I’ve been building this side project called Duva.
One thing I didn’t expect when I started: Rust actually made it easier for me to write a database.
What started as a toy project is now starting to feel like something that could actually go production-grade. No major blockers so far—and honestly, it’s been a lot of fun.
Duva’s using the Actor model under the hood, and right now it supports things like:
set/get- Key expiration
- Basic persistence with dumping + WAL (WAL isn’t fully wired up yet)
- Local sharding
- Lock-free architecture
- Gossip-based failure detection
- RAFT-style replicated logs and leader election
What surprised me the most is that, even as someone with zero prior experience in database internals, Rust lets me write and refactor code FEARLESSLY and experiment with things I thought were way out of reach before.
It is still very early days, and there’s tons of room to improve. If you’re into Rust, distributed systems, I’d love your feedback - or even help.
Duva is open source—check it out here( https://github.com/Migorithm/duva ):
And if you like the direction it’s going, a star would mean a lot 💛
Cheers!