IOPA core middleware for building full-stack servers
Switch branches/tags
Nothing to show
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.
.vscode
src
test
tools
.gitignore
LICENSE
NOTICE
README.md
index.js
jsconfig.json
package.json
shippable.yml

README.md

IOPA
iopa-common-middleware

Build Status IOPA limerun

NPM

About

iopa-common-middleare is a core set of IOPA middleware for building self-hosted servers

Written in plain javascript for maximum portability to constrained devices

Status

Working prototype

Includes:

IOPA BackForth (middleware)

  • Automatically matches requests and responses between connected devices based on sequential conversation

IOPA Cache and Match (middleware)

  • Automatic caching of outbound requests
  • Automatic matching of inbound responses to original requests based on session and message identifiers
  • Compatible with any transport including MQTT, CoAP and raw TCP / UDP

IOPA ClientSend (middleware)

  • Adds helper methods .send() and .observe() to IOPA context requests
  • These methods return a promise which complete on response

Installation

npm install iopa-common-middleware

Usage

const iopa = require('iopa')
    , BackForth = require('iopa-common-middleware').BackForth
    , CacheMatch = require('iopa-common-middleware').Cache
    , ClientSend = require('iopa-common-middleware').ClientSend
       
function MyProtocolServer(options, appFunc) {

:

app.use(BackForth);
app.use(CacheMatch.Cache);
app.use(ClientSend);

:

See iopa-mqtt for a reference implementation of this repository