Skip to content

firstbatchxyz/hollowdb-client

Repository files navigation

logo

HollowDB Client

HollowDB client is the simplest way to use HollowDB, a decentralized & privacy-preserving key-value database.

License: MIT NPM License: MIT Workflow: Tests GitHub: HollowDB Discord

Installation

HollowDB client is an NPM package. You can install it as:

yarn add hollowdb-client    # yarn
npm install hollowdb-client # npm
pnpm add hollowdb-client    # pnpm

Usage

Create a new API key and a database at https://developer.hollowdb.xyz. Create a new client by providing your API key and the database name to connect:

client = await HollowClient.new({
  apiKey: 'your-api-key',
  db: 'your-database-name',
});

After that, using the client is as simple as it gets:

// without zero-knowledge proofs
await client.get(KEY);
await client.put(KEY, VALUE);
await client.update(KEY, VALUE);
await client.remove(KEY);

If you are connecting to a database that has zero-knowledge proof verifications enabled, you will need to provide proofs along with your update & remove requests.

You can use our HollowDB Prover utility to generate proofs with minimal development effort. Assuming that a proof is generated for the respective request, the proof shall be provided as an additional argument to these functions.

// with zero-knowledge proofs
await client.get(KEY);
await client.put(KEY, VALUE);
await client.update(KEY, VALUE, PROOF);
await client.remove(KEY, PROOF);

Testing

To run tests:

yarn test

The API calls are mocked during the test, so you can run it offline.

About

Simplest way to use HollowDB.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •