ssb-backlinks

2.1.1 • Public • Published

ssb-backlinks

scuttlebot plugin for indexing all link mentions of messages (including private for the current identity).

Walks all values of a message searching for keys recognized as feed, channel, message or blobs. Provides an ssb-query style interface.

Example usage

const pull = require('pull-stream')
function createBacklinkStream (id) {
  var filterQuery = {
    $filter: {
      dest: id
    }
  }
 
  return sbot.backlinks.read({
    query: [filterQuery],
    index: 'DTA', // use asserted timestamps
    live: true
  })
}
 
const msgKey = '%+zYA9WF9cY+HqGLzqS1H7FdUdK45tUmTqiZ85p+RNOQ=.sha256'
var relatedMessages = []
 
pull(
  createBacklinkStream(msgKey),
  pull.filter(msg => !msg.sync),
    // note the 'live' style streams emit { sync: true } when they're up to date!
  pull.drain(msg => {
    relatedMessages.push(msg)
  })
)

Example usage as a Secret-Stack Plugin

ssb-backlinks can also be used as a secret-stack plugin directly.

var SecretStack = require('secret-stack')
var config = require('./some-config-file')
 
var {pull, drain} = require('pull-stream')
 
// you'd need many more plugins to make this useful
// demo purposes only
var create = SecretStack({
  appKey: appKey //32 random bytes
})
.use(require('ssb-db'))
.use(require('ssb-backlinks'))
.use(function (sbot, config) {
  pull(
    sbot.backlinks.read({
      query: [{$filter: {dest: "%dfadf..."}}], // some message hash
      index: 'DTA',
      live: true
    }),
    drain(console.log)
  )
)}
 
var server = create(config) // start application

Versions

Please note that 0.7.0 requires scuttlebot 11.3

License

MIT

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.1.1
    19
    • latest

Version History

Package Sidebar

Install

npm i ssb-backlinks

Weekly Downloads

30

Version

2.1.1

License

MIT

Unpacked Size

5.56 kB

Total Files

4

Last publish

Collaborators

  • powersource
  • arj03
  • staltz
  • mixmix
  • cel
  • mmckegg
  • christianbundy
  • dominictarr
  • marak
  • noffle
  • ahdinosaur
  • vtduncan
  • ev
  • pietgeursen
  • pfrazee
  • cryp7ix
  • happy0
  • kyphae