0.1.4 • Published 4 years ago

keyv-ipfs v0.1.4

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

keyv-Ipfs

IPFS storage adapter for Keyv, using json to serialize data fast and small.

Build Status npm

IPFS storage adapter for Keyv.

TTL functionality is handled internally by interval scan, don't need to panic about expired data take too much space.

Install

npm install --save keyv keyv-ipfs

Usage

Using with keyv

const Keyv = require('keyv')
const KeyvIpfs = require('keyv-ipfs')

//... import and create ipfs node

const node = await Ipfs.create();

const keyv = new Keyv({
  store: new KeyvIpfs(node)
});
// More options with default value:
const customKeyv = new Keyv({
  store: new KeyvIpfs(node ,{
    filename: `${os.tmpdir()}/keyv-file/default-rnd-${Math.random().toString(36).slice(2)}.json`, // the file path to store the data
    expiredCheckDelay: 24 * 3600 * 1000, // ms, check and remove expired data in each ms
    writeDelay: 100, // ms, batch write to disk in a specific duration, enhance write performance.
    encode: JSON.stringify, // serialize function
    decode: JSON.parse // deserialize function
  })
})

License

MIT