Set database type for OrbitDB.
$ pnpm add @orbitdb/set-db
As Set database is like a Feed, but each value can only be present once. Works for primitive types as well as more complex objects.
A simple example with Set:
import{createOrbitDB}from"@orbitdb/core";import{registerSet}from"@orbitdb/set-db";// Register set database type. IMPORTANT - must call before creating orbit instance !registerSet();constorbitdb=awaitcreateOrbitDB({ ipfs })constdb=awaitorbitdb.open({type: "set"});awaitdb.add(1);awaitdb.add(2);constall=awaitdb.all();// [1, 2]awaitdb.add(1);awaitdb.all()// Yay !! Still [1, 2]As more complex example with object types:
import{createOrbitDB}from"@orbitdb/core";import{registerSet}from"@orbitdb/set-db";// Register set database type. IMPORTANT - must call before creating orbit instance !registerSet();constorbit=awaitcreateOrbitDB({ ipfs })constdb=awaitorbitdb.open({type: "set"});awaitdb.add({a: 1});awaitdb.add({a: 2});constall=awaitdb.all();// [{a: 1}, {a: 2}]awaitdb.add({a: 1});awaitdb.all()// Yay !! Still [{a: 1}, {a: 2}]