All Projects → mafintosh → changesdown

mafintosh / changesdown

Licence: MIT License
levelup that uses a leveldown that writes to a changes feed to store its state

Programming Languages

javascript
184084 projects - #8 most used programming language
Protocol Buffer
295 projects

changesdown

levelup that uses a leveldown that writes to a changes feed to store its state

npm install changesdown

build status

Usage

var changesdown = require('changesdown')
var changes = require('changes-feed')
var level = require('level')

var feed = changes(level('changes'))
var db = changesdown(level('db'), feed)

db.put('hello', 'world', function() {
  db.get('hello', function(err, value) {
    console.log(value) // should print world
  })
})

db.createChangesStream({live:true})
  .on('data', function(data) {
    console.log('change:', data.value) // should print some changes
  })

API

db = changesdown(levelup, changesFeed, [options])

Returns a new levelup (db) that reads and writes from the changes feed. The levelup you pass in is used to store a view of the feed.

Any options passed will be forwarded to the levelup constructor.

stream = db.createChangesStream(opts)

Read from the changes stream and decode the changes value with the same encoding that was used in the levelup.

For example if you pass {valueEncoding: 'json'} the values will be decoded as JSON instead of buffers

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].