Transmit live socket updates through a distributed client P2P network, instead of requiring the server to do all of the heavy lifting. Uses WebRTC and jsrsasign encryption.
npm install grapevine-server
server.js
var express = require('express'); var app = express(); var server = app.listen(3000); var Grapevine = require('grapevine-server'); Grapevine.setup('/webrtc', app, server); app.get('/sendMessage', function(req, res){ Grapevine.messageAll('hello world'); return res.sendStatus(200); });
index.html
<script src="https://cdn.rawgit.com/mLuby/grapevine/master/client/grapevine-client.js"></script> <script> Grapevine.connectToServer({ host:'localhost', port:3000, path:'/webrtc' }); Grapevine.onMessage = function(message){ document.getElementById('title').innerHTML = 'I heard '+JSON.stringify(message)+' through the Grapevine'; }; </script>
