{"_id":"swarmbot","_rev":"26-51443ea3ae14d89b75a4f5478558ddea","name":"swarmbot","description":"mirroring for a p2p mesh of swarmlogs","dist-tags":{"latest":"1.8.3"},"versions":{"1.0.0":{"name":"swarmbot","version":"1.0.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.3.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","level":"^1.4.0","minimist":"^1.2.0","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"65cca0cea10004472a8d10f74510c88454a83eed","_id":"swarmbot@1.0.0","_shasum":"dc6b7d09a194b346fa40d5f81741dadaf97a9ce7","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"dc6b7d09a194b346fa40d5f81741dadaf97a9ce7","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.0.0.tgz","integrity":"sha512-RA/F+xLlc1hKvkN9iRMlo66z/fMkHoYySZN2jjLuylsCE2K2vq/ceUkz2AudojCCFVY0Ji9YmLnYFuFerTX18w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJIPRArGcLuQLvtsKi2p59Lp8Zd2Qq7ph/2LN5YglrhQIhALce/wUjL/OILUsGCvI3nOGqZ55G8GsCpd3Fl9FwfrsR"}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.0.0.tgz_1455605510123_0.9228799021802843"}},"1.1.0":{"name":"swarmbot","version":"1.1.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.3.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","level":"^1.4.0","minimist":"^1.2.0","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"deeb1a415a35c207fd6879baa81c0a205da92e5f","_id":"swarmbot@1.1.0","_shasum":"d82dfd55907770b987dce6900fdc8c129dfb13ac","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"d82dfd55907770b987dce6900fdc8c129dfb13ac","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.1.0.tgz","integrity":"sha512-594Xh2Qh6o6ZwezVFeCIookF2rOGRd5osHJ6av6uP1v44Xzl89Orx1K+4//3rNj/kP71xhBYfkWV9YA9gasVJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCH0Zbse0Ex7SnCA1jonMEhTqt3UNdtboashYBwF9DSmAIgK3XOY8+F1KDllbBrvqiJklDDoHb5vIswSAM8m4Jpp7s="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.1.0.tgz_1456216374829_0.24885174306109548"}},"1.2.0":{"name":"swarmbot","version":"1.2.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","level":"^1.4.0","minimist":"^1.2.0","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"d9778b69538c1bf53345d8416eda24e2cd2997f0","_id":"swarmbot@1.2.0","_shasum":"d840c96464603c69843a011c5fbed69b96fa5073","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"d840c96464603c69843a011c5fbed69b96fa5073","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.2.0.tgz","integrity":"sha512-xq5lvpvu9sE/EiZfQvZyTxYZamT+1M7nnpesyOSlUyHc3ZTv7QC12P1eBd5nmqcVAQqUaVPruCy25oODhbr/dA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDTTxTiHYyNTgvPpbJIKr/dD9dv8/vTSzfYtbm0sr0tmAiEAwGiOUOibC/EPm++DWGqLnln0HnMDfCGuaKgwCls34QA="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.2.0.tgz_1456227242758_0.980756463482976"}},"1.3.0":{"name":"swarmbot","version":"1.3.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","level":"^1.4.0","minimist":"^1.2.0","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"a842224342e38355107dffb01f75c071755f9e7c","_id":"swarmbot@1.3.0","_shasum":"205a77ac11644ea1ba470fe3bb7f1464f98d80bf","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"205a77ac11644ea1ba470fe3bb7f1464f98d80bf","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.0.tgz","integrity":"sha512-iFX2siRp42MQMVwvSjUwnIjpa/eaTME6Xgz2JjPdlXp73MDKf5jZSNgG6UtYVwERYiMVOxGkyAyRnvRnTYsaQw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVIUPpeGgTF5BXcRUwy0oAIBj1qrN4pPVvBQOHyd8FAgIgfuyI3tbnfPYRVeudR9Bd23bqqHYlfc2OcbmsQhCbVPE="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.0.tgz_1456229643750_0.7442490921821445"}},"1.3.1":{"name":"swarmbot","version":"1.3.1","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"ff56743e51bb692f03fb1983a027a97fab7c7f53","_id":"swarmbot@1.3.1","_shasum":"3ef15a4fd9fca55a14e2e76e5d9be270600e3608","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"3ef15a4fd9fca55a14e2e76e5d9be270600e3608","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.1.tgz","integrity":"sha512-sa6h+6Mlsy9AszKL7xgsbs1AXzbfDKt05W7X3cOuaoiUGckkHFbGl43UoDYJobHnrtwINBKzet5Hkuep54L8NQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDbndOymSQt1HWE5/VApSc22yOk7sf7mkzfaMiHJ9729AiBDFKwqzmrd9Ftl2PIWFdY8GsNSi0qSHwPEYCnlb+u0eg=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.1.tgz_1456362490237_0.4426933249924332"}},"1.3.2":{"name":"swarmbot","version":"1.3.2","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"scripts":{"test":"tape test/*.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0","wrtc":"~0.0.59"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"9392119b6d24c98529d463b439b65aa2237fc350","_id":"swarmbot@1.3.2","_shasum":"3c6f14b2cd1a6e60cb5fa471ec915a8101d276cc","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"3c6f14b2cd1a6e60cb5fa471ec915a8101d276cc","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.2.tgz","integrity":"sha512-K/PJCNahNCIYnBqiEvZhd8wddeYEFV1BuOCR94OwuH+BsSAvEMWUUO5PBcnZfgIFqqLOMOvwgGyG343fyHW02g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChIK1nm8xt/sNyn0ykfiVhFtnXxyC+Pa8cg2DzGuDiZwIhAKO9Tuu944mLZa5+iQu6wVuRrLXNvT9p58je0zIv8W/w"}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.2.tgz_1456367133011_0.6109226315747947"}},"1.3.3":{"name":"swarmbot","version":"1.3.3","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"f969da88dec5c9a8e223ff2222910e76b6f81229","_id":"swarmbot@1.3.3","scripts":{},"_shasum":"aceb83e1de50c6c25cb69dd0afbfc418e47260d4","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"aceb83e1de50c6c25cb69dd0afbfc418e47260d4","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.3.tgz","integrity":"sha512-9G6rS3MHJBfJyKpkF5wFWG4OaGkVcQrR2TZ2cP4ZaO91LirULYiHw7GoX7KtUgx7oqSrOnUVeppxdiYYLJJcaw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0R/XvpO492TjPuN1cp63HTLUfrsVKtAKFPBRgdHl3/gIgZvP3lzoRBYSYgnsbrZZjiZmzdPu5FmEPZXKLtpz1QHA="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.3.tgz_1456378789515_0.2882101384457201"}},"1.3.4":{"name":"swarmbot","version":"1.3.4","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"d22e5fd938364947f235aa1d88ded8f405a72102","_id":"swarmbot@1.3.4","scripts":{},"_shasum":"30894cfa6766adf1fa937399cf59e0ab94074c20","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"30894cfa6766adf1fa937399cf59e0ab94074c20","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.4.tgz","integrity":"sha512-XQTt9CXpd6ElFqKLmCwskkWxmlg7RufQdkW6FC1uSDaromLC4yJ6piM77fC7UX/rHlW/kntH5vorD0KTmkpueQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEcEDm5XtUA4ZEp2UUzrPcYwLYqvf94BLOh+R5im9Yl6AiEA5XGKWfOHzi6+b6Y35jGWX5L/IzOVBuXOPpaZaluL5h8="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.4.tgz_1456383735612_0.5824080039747059"}},"1.3.5":{"name":"swarmbot","version":"1.3.5","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"4d01c01b8b60f116648db03413de2ae8501931e0","_id":"swarmbot@1.3.5","scripts":{},"_shasum":"2cca1c1363095e8571c39dbe66ed646762acef56","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"2cca1c1363095e8571c39dbe66ed646762acef56","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.5.tgz","integrity":"sha512-IOJbn0rRHt8nimVJCyYoBd2Bnp8WR2aopkVoZbDRBxWBbqUr12WrR0aL78wZBJTWWzvbXOAgFNwhcc46WuZUgg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9PtnkViL6v6Dsithc3E/lpEyeZsuyqo0Lq98THLOaVwIgC1DwJyseUQI9N+fvzxaiEqsl0f7ZFJqGsCVGJAV0cJA="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.5.tgz_1456394923946_0.48248333763331175"}},"1.3.6":{"name":"swarmbot","version":"1.3.6","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"4d3e60007643334a5720ab4c3641d657dfe93ad2","_id":"swarmbot@1.3.6","scripts":{},"_shasum":"99601e95e9baf03746f95a634fc6398f44ce1589","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"99601e95e9baf03746f95a634fc6398f44ce1589","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.3.6.tgz","integrity":"sha512-vG8wDmyZ0i7uBCmpe3m/B2B51L6ux0/M7JiygkpIEvQi22BLApOxt8046IsznByTQE5to4vi/5iAQcdyiVHHEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlQIksh6MT5R1+uJAQMB3LGB6Nt85Wy1G21OborNXJ3QIgNGEAwGG3r0uWN8FteSEApcnCfdsK/cESiYucT8lSac4="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.3.6.tgz_1456400027640_0.3185024007689208"}},"1.4.0":{"name":"swarmbot","version":"1.4.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"335df46d1c12c474a74103fe72134d2daeddb447","_id":"swarmbot@1.4.0","scripts":{},"_shasum":"b11ef43c58fceeb70910b974e462bf7f879a8262","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"b11ef43c58fceeb70910b974e462bf7f879a8262","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.4.0.tgz","integrity":"sha512-KF1NWAKYmOZ+qqwZcnCxJK+OJ9FnYQtZyCI6coWoYdTrFcQgTmGvmN6KyP4ZdnnCpVhF9oFrj2isTkzKWRGzMw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGaWyqZXVbJSjgipf9wJl5XEX708JvL6LVLszOTsbwHXAiEAgeY0+mO5gGba1UuEzk4m0m+ab2nwVb5XjLYjDF5/eVU="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.4.0.tgz_1456449109738_0.6079412724357098"}},"1.4.1":{"name":"swarmbot","version":"1.4.1","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"b5c870708682852adcfa942438858d4b66efbfb5","_id":"swarmbot@1.4.1","scripts":{},"_shasum":"d0aa0b8f6f5ae19e58c708622662aec70ae9354f","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"d0aa0b8f6f5ae19e58c708622662aec70ae9354f","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.4.1.tgz","integrity":"sha512-zfB78uvQCgpL61nXLLIw/UdLu12PTU6Ry7L9sfjAfwV8+NGj+12ULhhp1A0dGcLbUN2zvcWrYCcHurTw7+6Ygg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdz0rK6Pq/C291JyA13oPCo46VA0VnmHVijMEZ6lgmEAIgEN8fOt9+QEJK2+p6n5xPo58so4AoyjmojWN7y7jkjhU="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.4.1.tgz_1456456183307_0.273857886204496"}},"1.4.2":{"name":"swarmbot","version":"1.4.2","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"7bbab6d003a6e175d2404b984c842f3d68d4a461","_id":"swarmbot@1.4.2","scripts":{},"_shasum":"7fe0a3b525be91013ff5bd40ecafe2284360ed05","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"7fe0a3b525be91013ff5bd40ecafe2284360ed05","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.4.2.tgz","integrity":"sha512-8ebhLTevXt8xp3FF0py1VSLPLm+xkFeO9PcndzlxvcplUCJff06ofV35FwHkBNIK8rp6XEyYMYrVTBJcQ+AjnQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCewdVSkiQAQGMjVigqqavkVSua0TE51oouG2n6trKSTQIhAJ3zNNm3Ctsa3GyjlCtLzgxxRrsrMmcsh5/RzoLBi2Ke"}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.4.2.tgz_1456456403697_0.7933687877375633"}},"1.5.0":{"name":"swarmbot","version":"1.5.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.4.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"370818dbd9d5ec73ee5ae54df2ff6d8df69afa6a","_id":"swarmbot@1.5.0","scripts":{},"_shasum":"0ea1573a3f67ef849e6234f883e0d52d73a8ffe4","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"0ea1573a3f67ef849e6234f883e0d52d73a8ffe4","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.5.0.tgz","integrity":"sha512-v7rt4ui+BWhgfY+dlN+bV8Ryo3frvG5SAARjnlmvX5oK0BoaUoNUOR8Gu0QTK6hqAJmSIQ6GlqyvED+azvoeNw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHTEgROT2/aKsq0NJlsFwLFAJE4MzxDetKBNARNu9ekrAiEA+6SgEWLY+902iZujFcs3SXNE6PZQzRoFJ7u1nWZX0kU="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.5.0.tgz_1456456549476_0.30271070869639516"}},"1.5.1":{"name":"swarmbot","version":"1.5.1","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"77ea5c74ac74929fcacd9cc3dfef1939e2f09708","_id":"swarmbot@1.5.1","scripts":{},"_shasum":"9a4fb97a07feccc31431351bb415c3c1fedcb464","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"9a4fb97a07feccc31431351bb415c3c1fedcb464","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.5.1.tgz","integrity":"sha512-1tv5ouyN8xWQu8lZ5B1+xwZf28Qblf8iojcgRzOIkpwpdIy42ytbKWfis0WlAkOqpqE3xDbGkT5mtMpfMcwXPg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAQqVt5aPKPu/g2Sw8oH04CpW2p5eTmbX0bji+a+2OBHAiB2PAKprhQrntnILdHXokZ5tafU1OzQCysYSOjsO+NeiQ=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.5.1.tgz_1456537896706_0.1756499393377453"}},"1.5.2":{"name":"swarmbot","version":"1.5.2","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"1aed9be1adf80f0c56d7c54a8ddae88177a5b6ae","_id":"swarmbot@1.5.2","scripts":{},"_shasum":"5e66d68a053d792cb29b80fd80468952572a17ce","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"5e66d68a053d792cb29b80fd80468952572a17ce","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.5.2.tgz","integrity":"sha512-MdXWdEPxJwhcZLsF57uWL5sc6YrzQMRTwHbIXnfl9XMm+l9JkJhOWeedBrymvtGtWwMIkw5H0rWLOhnGn5BSDw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBgoWNjDQ4X+ArDd4vqjfjG6gxrQYPh7Er/W1tDPPOhAiEAniXHlnqa9tSx27yk/r0udkB6u716Q4yMiHDfZxWWQrM="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.5.2.tgz_1456552206521_0.8736637989059091"}},"1.6.0":{"name":"swarmbot","version":"1.6.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"6ecd335bee51697011d308d8a403fb23fb4b36cd","_id":"swarmbot@1.6.0","scripts":{},"_shasum":"e52d875f8c1271ed509c504f16cd4e59162b5a31","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"e52d875f8c1271ed509c504f16cd4e59162b5a31","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.6.0.tgz","integrity":"sha512-tIX6MfFoUZJfuY/11qsu7QyBDRxkqkTdiuBTi5bJILygUGa1yCmc3E3q3c5WBb8T7PotRACHVs0j3cuFc117dg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG8RnVsCrcI/jofweUKlhEPdz8TqS6QF8hqZt14ZiWMnAiAPhWnvUmF3sCr4T+Yj98mxRbReMMjACu+z85lC7dh26Q=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.6.0.tgz_1456560359641_0.364556843880564"}},"1.7.0":{"name":"swarmbot","version":"1.7.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"fd825acd100ce20d9b59f0b632711028faffd9fc","_id":"swarmbot@1.7.0","scripts":{},"_shasum":"f8c3a8e715e49c8cee33693ffd7f8cb5737a328e","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"f8c3a8e715e49c8cee33693ffd7f8cb5737a328e","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.7.0.tgz","integrity":"sha512-Hr+VvxPFcaQhhjeWO8+UM4SN7/TfsBacVOnqbo4pTpsGDgh/PGtrAEr12rEs3CDYHTfXpUrwE9Xfor6KqPOWjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFgHwBe2upYOCVXrnaBqVxHnKU2goUGTKgVZ4q/nOfDTAiBxydIZ80MVZsQ+owAJ4kBsr/aX5O81k6beiqZATusOFQ=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.7.0.tgz_1456560731362_0.20870175445452332"}},"1.8.0":{"name":"swarmbot","version":"1.8.0","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"3c6eb64a9ee08ea1e40e2e1ce4169ddc2dd96bff","_id":"swarmbot@1.8.0","scripts":{},"_shasum":"db950327428f2b2ff8ada975a4391119408c14d6","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"db950327428f2b2ff8ada975a4391119408c14d6","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.8.0.tgz","integrity":"sha512-Xr8cop/5xlKTVMlzGj/bU/NABMCF2xBsib/1U8Hw8uHs8uRk9MjofT8lRFnniE8NDU99HH6oxpADejGyFQU7yw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEkNSmV/6KrkSggX40e22dN3qfd3tyXNVc8+WBo3BUOyAiAR7SU56O0+oJugLxGQUmlO89EYoAxPKATBgH1cGgtE1Q=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/swarmbot-1.8.0.tgz_1456566477660_0.2511931271292269"}},"1.8.1":{"name":"swarmbot","version":"1.8.1","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"338b9c1cac1444af04c948dd69456c3433dedcbf","_id":"swarmbot@1.8.1","scripts":{},"_shasum":"31e1f2043eb70e2050ce533236f2d5daf50a1f40","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"31e1f2043eb70e2050ce533236f2d5daf50a1f40","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.8.1.tgz","integrity":"sha512-xA7AZFhy+GGSFEsInKIZMKNoowH+R+79tpopMRxfvMd+0NPXdIwJC9Mo+mDnY/S4ghHw0sMCif0RbFS9aNjCsQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGXYmEqy0hhz2a258u2qDeLoxt86Cu1IBnK4wBVyC90eAiBXAqME8e2dftt1tL9C8FwcRSV6zE44OQIg43kY8j2+NQ=="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.8.1.tgz_1456569469672_0.5620863817166537"}},"1.8.2":{"name":"swarmbot","version":"1.8.2","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.36.9","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","tree-kill":"^1.0.0","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"fefc7d0d045bc23f6f03602573d9f1b7ba39606d","_id":"swarmbot@1.8.2","scripts":{},"_shasum":"b6810e9825e24c4790644adbf1aa676230acc864","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"b6810e9825e24c4790644adbf1aa676230acc864","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.8.2.tgz","integrity":"sha512-mOudFWw/CA50Yoxq/nFrraiI9q27ur0q5EaJqw5YI10u709alN8DQi+Qs98TieVw7BREOYelW+fCWxzjqe1WSQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWvnG46py+kX6/F2kcb+t0AQhRfprMtU605bqiVVjmawIgdIIZ9ab0Wu1StClFMggVhONh+dQTn15MSGtjOj+8ZSM="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.8.2.tgz_1456575827519_0.8633875520899892"}},"1.8.3":{"name":"swarmbot","version":"1.8.3","description":"mirroring for a p2p mesh of swarmlogs","main":"index.js","bin":{"swarmbot":"cmd.js"},"keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"author":{"name":"substack"},"license":"BSD","dependencies":{"auto-daemon":"^2.5.0","chloride":"^2.0.1","defined":"^1.0.0","duplexify":"^3.4.2","electron-prebuilt":"^0.37.1","electron-spawn":"^4.1.0","has":"^1.0.1","homedir":"^0.6.0","hyperlog-index":"^5.0.0","inherits":"^2.0.1","level":"^1.4.0","minimist":"^1.2.0","mkdirp":"^0.5.1","once":"^1.3.3","pump":"^1.0.1","resolve":"^1.1.7","ssb-keys":"^4.0.10","subleveldown":"^2.1.0","swarmlog":"^1.4.0","through2":"^2.0.1","tree-kill":"^1.0.0","xtend":"^4.0.1"},"devDependencies":{"memdb":"^1.3.1","tape":"^4.4.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"homepage":"https://github.com/substack/swarmbot#readme","gitHead":"969f74fb8a294d42280cf8be672cd01171bb2be7","_id":"swarmbot@1.8.3","scripts":{},"_shasum":"ab7ee1cc1c8e4dcf4f4349112765001ece6d6821","_from":".","_npmVersion":"3.7.1","_nodeVersion":"5.5.0","_npmUser":{"name":"substack","email":"substack@gmail.com"},"dist":{"shasum":"ab7ee1cc1c8e4dcf4f4349112765001ece6d6821","tarball":"https://registry.npmjs.org/swarmbot/-/swarmbot-1.8.3.tgz","integrity":"sha512-Oz4eEye1bFmL8s162zEO+ihXbXeNanfyUFw3CIkC5jq+2gVM8uHqAxuDdLD4m2an1KTLjN9eUtlhxEME9D7QXw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGGeJ8mf1NQkgNTcCn/n2BsFFKiEIO6+Q3YaSNDNV/taAiEAic5dS+b48CMIqpKYk8N8vODvelhnoNRSaXaSbjGfcxY="}]},"maintainers":[{"name":"substack","email":"substack@gmail.com"}],"_npmOperationalInternal":{"host":"packages-13-west.internal.npmjs.com","tmp":"tmp/swarmbot-1.8.3.tgz_1458891949318_0.17412680783309042"}}},"readme":"# swarmbot\n\nmirroring for a p2p mesh of [swarmlogs][1]\n\nswarmbots are useful for improving the availability of a swarmlog by running\ndedicated mirroring peers for a list of public keys.\n\nThis tool consists of 4 parts:\n\n* swarmbot api\n* swarmbot rpc interface\n* swarmbot command\n* swarmbot daemon\n\nHeavily inspired by [scuttlebot][6].\n\nMake sure to use node 5 when installing swarmbot from npm.\n\n# command-line usage\n\nOn a system with high uptime, it's useful to set up a swarmbot to mirror other\nnodes on poor connections or in other geographic locations for redundancy.\n\nThis is easiest to do with the swarmbot command.\n\nFirst, you should configure one or more signalhubs to use:\n\n```\n$ swarmbot hubs add https://signalhub.mafintosh.com\n```\n\nNow you can start mirroring swarmlog pubkeys:\n\n```\n$ swarmbot mirror U8fatVWlxT4bfCmgIw917pEoHakQs9P/l3VDNfuIm68=.ed25519\n```\n\n## usage\n\n```\nswarmbot id\n  Print PUBKEY for the swarmbot mirror feed.\n\nswarmbot mirror PUBKEY\n  Mirror a PUBKEY.\n\nswarmbot unmirror PUBKEY\n  Stop mirroring a PUBKEY.\n\nswarmbot mirroring\n  Show mirroring PUBKEYs.\n\nswarmbot server\n  Listen in the foreground.\n\nswarmbot pid\n  Print the background daemon process id.\n\nswarmbot stop\n  Kill the daemon process.\n\nswarmbot restart\n  Stop the background process and start a new process in its place.\n\nswarmbot hubs\n  Print the list of signalhubs.\n\nswarmbot hubs add HUB\n  Add a signalhub to the configuration.\n\nswarmbot hubs remove HUB\n  Remove a signalhub from the configuration.\n\nswarmbot plugins\n  Print the list of installed plugins.\n\nswarmbot plugins add PLUGIN\n  Add an already-installed plugin to the config.\n\nswarmbot plugins remove PLUGIN\n  Remove an installed plugin from the config.\n\nswarmbot plugins install PLUGIN\n  Install a plugin from npm then add it to the config.\n\n```\n\n# rpc usage\n\nApplications that write to a swarmlog might want to register their keys with the\nswarmlog daemon on the local system. If the daemon isn't running, the rpc\nendpoint will automatically spawn it.\n\n``` js\nvar RPC = require('swarmbot/rpc')\n```\n\n## var rpc = RPC(opts)\n\nCreate new `rpc` handle from:\n\n* `opts.dir` - directory to use for pid/sock/db files. default: `~/.config/swarmbot`\n* `opts.hubs` - array of [signalhub][2] URL strings\n* `opts.plugins` - array of module paths to use as plugins\n\n## rpc.id(cb)\n\nGet the public key of the swarmbot as `cb(err, id)`.\n\n## rpc.mirror(id, cb)\n\nMirror the public key `id`.\n\n## rpc.unmirror(id, cb)\n\nStop mirroring the public key `id`.\n\n## rpc.mirroring(cb)\n\nList the public keys being mirrored as `cb(err, ids)`.\n\n## rpc.configFile(cb)\n\nGet the configuration file as `cb(err, configfile)`.\n\n## rpc.readConfig(cb)\n\nRead the configuration file contents as `cb(err, config)`.\n\n## rpc.writeConfig(config, cb)\n\nWrite the configuration in a `config` object to the config file.\n\n## rpc.pid(cb)\n\nGet the process id as `cb(err, pid)`.\n\n## rpc.emitEvent(name, args...)\n\nEmit an event `name` with `args...` on the swarmbot instance.\n\n## rpc.replicateStream(id, cb)\n\nOpen a replication stream with the log at `id`.\n\n`cb(err)` fires when there is an error or the replication finishes successfully.\n\n# api example\n\nUsing the API directly\n\nFirst, we will generate cryptographic keypairs for a publisher and a mirror\nnode:\n\n```\n$ node -pe \"JSON.stringify(require('ssb-keys').generate())\" > publish.json\n$ node -pe \"JSON.stringify(require('ssb-keys').generate())\" > mirror.json\n```\n\nNow we can create a swarmlog publisher:\n\n``` js\nvar swarmlog = require('swarmlog')\nvar level = require('level')\nvar chloride = require('chloride/browser')\n\nvar log = swarmlog({\n  db: level('/tmp/publish.db'),\n  hubs: ['https://signalhub.mafintosh.com'],\n  sodium: chloride,\n  valueEncoding: 'json',\n  keys: require('./publish.json')\n})\n\nsetInterval(function () {\n  log.append({\n    msg: 'HELLOx' + Math.floor((Date.now()/1000) % 1000)\n  })\n}, 1000)\n```\n\nand run the publisher:\n\n```\n$ electron-spawn publish.js\n```\n\nNext we can create a swarmbot mirror:\n\n``` js\nvar swarmbot = require('swarmbot')\nvar level = require('level')\nvar chloride = require('chloride/browser')\n\nvar bot = swarmbot({\n  db: level('/tmp/mirror.db'),\n  hubs: ['https://signalhub.mafintosh.com'],\n  sodium: chloride,\n  keys: require('./mirror.json')\n})\n\nvar argv = process.argv.slice(2)\nif (argv[0] === 'mirror') {\n  bot.mirror(argv[1], function (err) {\n    if (err) console.error(err)\n    else console.log('ok')\n  })\n} else if (argv[0] === 'mirroring') {\n  bot.mirroring(function (err, ids) {\n    ids.forEach(function (x) { console.log(x.id) })\n  })\n} else if (argv[0] === 'log') {\n  bot.open(argv[1]).createReadStream({ live: true })\n    .on('data', function (row) { console.log(row.value) })\n}\n```\n\nWe can mirror the publisher public key:\n\n```\n$ json public < publish.json\nd9h38QqCVLjmCTdB5vNHF5s/QrLmMYbm0B8UoYazZbg=.ed25519\n$ electron-spawn mirror.js mirror d9h38QqCVLjmCTdB5vNHF5s/QrLmMYbm0B8UoYazZbg=.ed25519\nok\n^c\n$ electron-spawn mirror.js mirroring\nd9h38QqCVLjmCTdB5vNHF5s/QrLmMYbm0B8UoYazZbg=.ed25519\n^c\n```\n\nand from the mirror node, we can log all the data from the publisher:\n\n```\n$ electron-spawn mirror.js log d9h38QqCVLjmCTdB5vNHF5s/QrLmMYbm0B8UoYazZbg=.ed25519\n{ msg: 'HELLOx998' }\n{ msg: 'HELLOx999' }\n{ msg: 'HELLOx0' }\n{ msg: 'HELLOx1' }\n{ msg: 'HELLOx2' }\n^c\n```\n\n# api\n\n``` js\nvar swarmbot = require('swarmbot')\n```\n\n## var bot = swarmbot(opts)\n\nCreate a swarmbot mirror from `opts`:\n\n* `opts.keys` - keypair data from `require('ssb-keys').generate()`\n* `opts.hubs` - array of [signalhub][2] URL strings\n* `opts.sodium` - sodium cryptographic API\n(`require('chloride')` or `require('chloride/browser')`)\n* `opts.wrtc` - provide a [webrtc][5] instance to use webrtc outside of the\nbrowser\n\nYou can specify a single data store:\n\n* `opts.db` - [leveldb][3] instance (use [level-browserify][4] in the browser)\n\nor you can specify each data store separately:\n\n* `opts.logdb` - [leveldb][3] instance for the logdb\n* `opts.idb` - [leveldb][4] instance for indexing\n\nSeparating the data stores can be useful for upgrades and plugins where the log\nserves as the source of truth and the indexes present materialized views on the\nlog that can be rebuilt when the index requirements change.\n\n## bot.mirror(id, opts={}, cb)\n\nMirror the swarmlog that has the public key `id`, remembering `id` when the\nswarmbot starts up in the future.\n\n## bot.unmirror(id, opts={}, cb)\n\nStop mirroring the swarmlog at `id` and stop mirroring automatically in the\nfuture.\n\n## var stream = bot.mirroring(cb)\n\nReturn a readable object `stream` with all the nodes that are currently being mirrored.\n\nEach mirror object `row` in the object stream has:\n\n* `row.id` - the public key of the remote swarmlog\n* `row.key` - the key of the document that first initialized the mirroring\n\nOptionally read the data as `cb(err, mirrors)`.\n\n## var log = bot.open(id, opts={})\n\nOpen a [swarmlog][1] to `id`.\n\n## bot.close(id)\n\nClose the connection for `id`.\n\n## bot.destroy()\n\nClose all open connections.\n\n## bot.on('open', function (id, log) {})\n\nWhen a swarmlog is opened, this event fires with the `id` and `log`.\n\n## bot.on('close', function (id, log) {})\n\nWhen a swarmlog is closed, this event fires with the `id` and `log`.\n\n## var db = bot.db(name)\n\nRequest a prefixed database handle `db` for a plugin called `name`.\n\n# plugin api\n\nPlugins are modules that receive a swarmbot instance as their first argument and\ncommand-line options as their second argument.\n\nFor example, this plugin will print messages when a log is opened or closed:\n\n``` js\nmodule.exports = function (bot, opts) {\n  bot.on('open', function (id, log) { console.log('OPEN', id) })\n  bot.on('close', function (id, log) { console.log('CLOSE', id) })\n}\n```\n\n# install\n\nThis library currently works only with node 5.\n\nMake sure to run node 5 when running npm install.\n\nTo get the library:\n\n```\nnpm install swarmbot\n```\n\nTo get the swarmbot command:\n\n```\nnpm install -g swarmbot\n```\n\n# license\n\nBSD\n\n[1]: https://npmjs.com/package/swarmlog\n[2]: https://npmjs.com/package/signalhub\n[3]: https://npmjs.com/package/level\n[4]: https://npmjs.com/package/level-browserify\n[5]: https://npmjs.com/package/wrtc\n[6]: https://www.npmjs.com/package/scuttlebot\n","maintainers":[{"email":"nopersonsmodules@gmail.com","name":"nopersonsmodules"}],"time":{"modified":"2022-11-08T10:41:14.163Z","created":"2016-02-16T06:51:52.013Z","1.0.0":"2016-02-16T06:51:52.013Z","1.1.0":"2016-02-23T08:32:59.527Z","1.2.0":"2016-02-23T11:34:06.189Z","1.3.0":"2016-02-23T12:14:04.377Z","1.3.1":"2016-02-25T01:08:10.940Z","1.3.2":"2016-02-25T02:25:33.767Z","1.3.3":"2016-02-25T05:39:50.219Z","1.3.4":"2016-02-25T07:02:20.916Z","1.3.5":"2016-02-25T10:08:44.657Z","1.3.6":"2016-02-25T11:33:48.422Z","1.4.0":"2016-02-26T01:11:50.587Z","1.4.1":"2016-02-26T03:09:45.784Z","1.4.2":"2016-02-26T03:13:27.374Z","1.5.0":"2016-02-26T03:15:50.777Z","1.5.1":"2016-02-27T01:51:37.778Z","1.5.2":"2016-02-27T05:50:07.549Z","1.6.0":"2016-02-27T08:06:00.778Z","1.7.0":"2016-02-27T08:12:13.975Z","1.8.0":"2016-02-27T09:48:00.398Z","1.8.1":"2016-02-27T10:37:50.701Z","1.8.2":"2016-02-27T12:23:48.570Z","1.8.3":"2016-03-25T07:45:49.708Z"},"homepage":"https://github.com/substack/swarmbot#readme","keywords":["swarm","webrtc","p2p","swarmlog","daemon","connection pool"],"repository":{"type":"git","url":"git+https://github.com/substack/swarmbot.git"},"author":{"name":"substack"},"bugs":{"url":"https://github.com/substack/swarmbot/issues"},"license":"BSD","readmeFilename":"readme.md"}