react hooks and providers for dealing with IPFS orbit-db datasources.
You can see a demo here : https://revolunet.github.io/react-orbitdb
OrbitProvider
creates a shared IPFS Node and an orbit-db instance.
import { OrbitProvider } from "react-orbitdb";
const App = () => <OrbitProvider>...</OrbitProvider>;
config
prop with ipfs configuration can be passed to the provider. (see the default)
useOrbitDb
connects and return records from an OrbitDB database. records
are updated in real-time.
import { useOrbitDb } from "react-orbitdb";
const MyCmp = () => {
const { db, records } = useOrbitDb("/orbitdb/somehash/my-db, {
create: true,
type: 'eventlog'
});
return (
<div>
{records &&
records.map((record) => <div key={record.id}>{record.message}</div>)}
</div>
);
};
options
: OrbitDB.open options- the
options.create
andoptions.public
values set the database world-writeable when you first create it.
- the
useOrbit
is included in OrbitProvider
, you should not need it
useIpfs
is included in OrbitProvider
, you should not need it