RipDB – Decentralized Key-Value Store
github.comI built RipDB a few months ago for a hackathon project as lightweight, decentralized alternative to traditional SQL databases, would love to hear your thoughts! A bit about the motivation below:
The SQL database is a powerful tool unrivaled for storing and querying relational data.
BUT, I believe most dapps can live without a traditional SQL database in favor of something more light weight and decentralized.
Here are some problems with setting up a DB for your dapp
1. There are already many great services which index blockchain data (why reinvent the wheel?) DBs are expensive to host 2. Migrations are often a pain 3. DBs tend to be centralized / treasure troves for attackers 4. They usually don't give users provenance over their data 5. Encryption / key management is a pain 6. Many web3 developers choose to store their data as JSON directly on IPFS rather than a traditional DB, but IPFS upload times can be slow and gateway timeouts are brutal.
If a traditional DB seems overkill for your use case and interacting directly with IPFS seems a bit too slow, RIP might be for you.
It gives you the speed of in memory-cache (Redis) but the decentralization of a global network (Filecoin + IPFS), with some other goodies like encryption.
Dumb question do I call this from the server side or client(browser)?
Not a dumb question, the example is for the client library (browser-side).
We also have a server side library you can use in node if you wanted. But for e2e encryption to work you need to use the client library