Skip to content
A communication library for communication libraries
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
spec
src
.babelrc
.eslintrc.json
.gitignore
.npmignore
.prettierrc
CHANGELOG.md
LICNSE.md
README.md
package-lock.json
package.json

README.md

SB-Communication

SB-Communication is a base communication low-level library meant to be used in other communication libraries. It allows promise-based communication on both ends, You must write a wrapper for it for your use-case specific stream, socket or resource though. It works in both browsers and node!

Example Communication Implementation

'use babel'

import Communication from 'sb-communication'

const worker = new WebWorker('worker.js')

const communication = new Communication({
  listener(callback) {
    worker.onmessage = callback
  },
  send(data) {
    worker.postMessage = data
  },
})

// Event-Specific bindings
communication.on('count-pi', async function(data) {
  // ^ Handlers can return Promises or be sync
  console.log(data)
  return 'Something else'
})

API

export default class Communication {
  constructor({ listener: Function, send: Function })
  on(event, callback)
  send(event, payload)
  dispose()
}

LICENSE

This project is licensed under the terms of MIT License.

You can’t perform that action at this time.