orbit-db-eventstore

    1.12.0 • Public • Published

    orbit-db-eventstore

    npm version Gitter Matrix Discord

    Append-Only Log database for orbit-db

    An append-only log with traversable history. Useful for "latest N" use cases or as a message queue.

    Used in orbit-db.

    Table of Contents

    Install

    This project uses npm and nodejs

    npm install orbit-db ipfs

    Usage

    First, create an instance of OrbitDB:

    const IPFS = require('ipfs')
    const OrbitDB = require('orbit-db')
     
    const ipfs = new IPFS()
    const orbitdb = await OrbitDB.createInstance(ipfs)

    Get a log database and add an entry to it:

    const log = await orbitdb.eventlog('haad.posts')
    log.add({ name: 'hello world' })
      .then(() => {
        const items = log.iterator().collect().map(e => e.payload.value)
        items.forEach(e => console.log(e.name))
        // "hello world"
      })

    Later, when the database contains data, load the history and query when ready:

    const log = await orbitdb.eventlog('haad.posts')
    log.events.on('ready', () => {
      const items = log.iterator().collect().map(e => e.payload.value)
      items.forEach(e => console.log(e.name))
      // "hello world"
    })

    See example/index.html for a detailed example. Note that to run this example, you need to have a local IPFS daemon running at port 5001.

    API

    See orbit-db's API Documenations for full details.

    Contributing

    If you think this could be better, please open an issue!

    Please note that all interactions in @orbitdb fall under our Code of Conduct.

    Note that tests for this module are in the orbit-db repository.

    License

    MIT © 2016-2020 Protocol Labs Inc., Haja Networks Oy

    Install

    npm i orbit-db-eventstore

    DownloadsWeekly Downloads

    2,305

    Version

    1.12.0

    License

    MIT

    Unpacked Size

    11.2 kB

    Total Files

    7

    Last publish

    Collaborators

    • haad
    • shamb0t
    • hajamark