Skip to content
/ welo Public
forked from hldb/welo

opalescent database implemented in typescript

License

Notifications You must be signed in to change notification settings

tabcat/welo

 
 

Repository files navigation

npm Codecov node-current NPM

welo

opalescent database implemented in typescript

Beta Release Tacker: hldb#8

DALL·E 2022-09-27 21 45 51 - cabochon gemstone opal  translucent vibrant multi-color  AAA+ grade  100 carats  macro photography  kaleidoscope inside the opal

Install

npm install welo

Usage

import IPFS from 'ipfs'
import { Welo } from 'welo'

/** look at js-ipfs for configurations */
const ipfs = await IPFS.create() // 

/** see more config options in the API docs */
const welo = await Welo.create({
  ipfs,
  libp2p: ipfs.libp2p // ipfs.libp2p will throw a typescript error; it's a hack for now
})

/** create a manifest for a keyvalue database */
const manifest = await welo.determine({
  name: 'this is the databases name',
  type: 'keyvalue'
})

/** open the keyvalue database */
const keyvalue = await welo.open(manifest)

/** The keyvalue API docs are not uploaded yet */

const entryCID = await keyvalue.put('key', 'value')
const value = await keyvalue.get('key')
const entryCID = await keyvalue.del('key')

Check out the tests for more usage examples for now.

API

Check out the API Docs

License

This project is dual licensed under APACHE-2.0 and MIT.

Funding

Thanks to Protocol Labs for Funding this project through a grant.

About

opalescent database implemented in typescript

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%