Simple exponential backoff because the others seem to have weird abstractions.
$ npm install backo
min initial timeout in milliseconds [100]max max timeout [10000]jitter [0]factor [2]var Backoff = require('backo'); var backoff = new Backoff({ min: 100, max: 20000 }); setTimeout(function(){ something.reconnect(); }, backoff.duration()); // later when something works backoff.reset()
MIT