{"_id":"multiplex-stream-muxer","_rev":"4646788","name":"multiplex-stream-muxer","description":"Abstraction on top of multiplex, implementing the abstract-stream-muxer interface","dist-tags":{"latest":"0.2.0"},"maintainers":[{"name":"daviddias","email":"daviddias.p@gmail.com"}],"time":{"modified":"2026-04-10T20:19:39.000Z","created":"2015-07-14T00:25:07.194Z","0.2.0":"2015-07-14T20:36:34.782Z","0.1.1":"2015-07-14T00:27:15.766Z","0.1.0":"2015-07-14T00:25:07.194Z"},"users":{},"author":{"name":"David Dias","email":"daviddias@ipfs.io"},"repository":{"type":"git","url":"https://github.com/diasdavid/node-multiplex-stream-muxer.git"},"versions":{"0.2.0":{"name":"multiplex-stream-muxer","version":"0.2.0","description":"Abstraction on top of multiplex, implementing the abstract-stream-muxer interface","main":"src/index.js","scripts":{"codestyle":"standard --format","test":"node tests/test.js"},"repository":{"type":"git","url":"https://github.com/diasdavid/node-multiplex-stream-muxer.git"},"keywords":["stream","multiplexing","tests","interface","mux","muxing"],"author":{"name":"David Dias","email":"daviddias@ipfs.io"},"license":"MIT","bugs":{"url":"https://github.com/diasdavid/node-multiplex-stream-muxer/issues"},"homepage":"https://github.com/diasdavid/node-multiplex-stream-muxer","pre-commit":["codestyle","test"],"devDependencies":{"abstract-stream-muxer":"^0.2.0","precommit-hook":"^3.0.0","standard":"^4.5.3","tape":"^4.0.0"},"dependencies":{"multiplex":"^6.2.2"},"gitHead":"d7db4e8be1ce637fc3edb80617f4190291b3482e","_id":"multiplex-stream-muxer@0.2.0","_shasum":"c50def1087bdda70a468b93ac4b39da1a72dc39f","_from":".","_npmVersion":"2.11.2","_nodeVersion":"0.12.5","_npmUser":{"name":"daviddias","email":"daviddias.p@gmail.com"},"maintainers":[{"name":"daviddias","email":"daviddias.p@gmail.com"}],"dist":{"shasum":"c50def1087bdda70a468b93ac4b39da1a72dc39f","size":2571,"noattachment":false,"key":"/multiplex-stream-muxer/-/multiplex-stream-muxer-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/multiplex-stream-muxer/download/multiplex-stream-muxer-0.2.0.tgz"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T14:06:24.903Z","publish_time":1436906194782,"_cnpm_publish_time":1436906194782},"0.1.1":{"name":"multiplex-stream-muxer","version":"0.1.1","description":"Abstraction on top of multiplex, implementing the abstract-stream-muxer interface","main":"src/index.js","scripts":{"codestyle":"standard --format","test":"node tests/test.js"},"repository":{"type":"git","url":"https://github.com/diasdavid/node-multiplex-stream-muxer.git"},"keywords":["stream","multiplexing","tests","interface","mux","muxing"],"author":{"name":"David Dias","email":"daviddias@ipfs.io"},"license":"MIT","bugs":{"url":"https://github.com/diasdavid/node-multiplex-stream-muxer/issues"},"homepage":"https://github.com/diasdavid/node-multiplex-stream-muxer","pre-commit":["codestyle","test"],"devDependencies":{"abstract-stream-muxer":"^0.1.0","precommit-hook":"^3.0.0","standard":"^4.5.3","tape":"^4.0.0"},"dependencies":{"multiplex":"^6.2.2"},"gitHead":"46310b1bbb25bd47d60dadb43ef4a6a7f9fa6a18","_id":"multiplex-stream-muxer@0.1.1","_shasum":"890f5fc89e1503b44b5b84d0ebd76801002efd30","_from":".","_npmVersion":"2.11.2","_nodeVersion":"0.12.5","_npmUser":{"name":"daviddias","email":"daviddias.p@gmail.com"},"maintainers":[{"name":"daviddias","email":"daviddias.p@gmail.com"}],"dist":{"shasum":"890f5fc89e1503b44b5b84d0ebd76801002efd30","size":2403,"noattachment":false,"key":"/multiplex-stream-muxer/-/multiplex-stream-muxer-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/multiplex-stream-muxer/download/multiplex-stream-muxer-0.1.1.tgz"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T14:06:24.041Z","publish_time":1436833635766,"_cnpm_publish_time":1436833635766},"0.1.0":{"name":"multiplex-stream-muxer","version":"0.1.0","description":"Abstraction on top of multiplex, implementing the abstract-stream-muxer interface","main":"src/index.js","scripts":{"codestyle":"standard --format","test":"node tests/test.js"},"repository":{"type":"git","url":"https://github.com/diasdavid/node-multiplex-stream-muxer.git"},"keywords":["stream","multiplexing","tests","interface","mux","muxing"],"author":{"name":"David Dias","email":"daviddias@ipfs.io"},"license":"MIT","bugs":{"url":"https://github.com/diasdavid/node-multiplex-stream-muxer/issues"},"homepage":"https://github.com/diasdavid/node-multiplex-stream-muxer","pre-commit":["codestyle","test"],"devDependencies":{"precommit-hook":"^3.0.0","standard":"^4.5.3","tape":"^4.0.0"},"dependencies":{"multiplex":"^6.2.2"},"gitHead":"887ea3c26ff9ac51f009c4f998b1c070970ed39d","_id":"multiplex-stream-muxer@0.1.0","_shasum":"ba976ec7ff6d68307b2cd35eccd74693587d7e71","_from":".","_npmVersion":"2.11.2","_nodeVersion":"0.12.5","_npmUser":{"name":"daviddias","email":"daviddias.p@gmail.com"},"maintainers":[{"name":"daviddias","email":"daviddias.p@gmail.com"}],"dist":{"shasum":"ba976ec7ff6d68307b2cd35eccd74693587d7e71","size":2395,"noattachment":false,"key":"/multiplex-stream-muxer/-/multiplex-stream-muxer-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/multiplex-stream-muxer/download/multiplex-stream-muxer-0.1.0.tgz"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T14:06:23.179Z","publish_time":1436833507194,"_cnpm_publish_time":1436833507194}},"readme":"multiplex-stream-muxer Node.js Implementation\n=============================================\n\n[![](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](http://ipn.io) [![](https://img.shields.io/badge/freenode-%23ipfs-blue.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23ipfs)\n\n> Abstraction on top of multiplex, implementing the abstract-stream-muxer interface\n\n[![](https://github.com/diasdavid/abstract-stream-muxer/blob/master/img/badge.png)](https://github.com/diasdavid/abstract-stream-muxer)\n\n# Usage\n\nmultiplex-stream-muxer follows the [abstract-stream-muxer API](https://github.com/diasdavid/abstract-stream-muxer#api)\n\n# Example\n\n```JavaScript\n// Client.js\nvar MultiplexStreamMuxer = require('multiplex-stream-muxer')\n\nvar dialer = new MultiplexStreamMuxer()\n\nvar connDialer = dialer.attach(socket, false)\n\nconnDialer.dialStream(function (err, stream) {\n  t.ifError(err, 'Should not throw')\n  t.pass('dialed stream')\n})\n```\n\n```JavaScript\n// Server.js\nvar MultiplexStreamMuxer = require('multiplex-stream-muxer')\n\nvar listener = new MultiplexStreamMuxer()\n\nvar connListener = listener.attach(socket, true)\n\nconnListener.on('stream', function (stream) {\n  t.pass('got stream')\n})\n```\n\nYou can also follow the net.connect pattern by listening to the `ready` and `error` events\n\n```JavaScript\nvar stream = connListener.dialStream()\n\nstream.on('ready', function () {})\n\nstream.on('error', function (err) {})\n\nstream.write('buffer this') // this write will be buffered untill the socket is ready to transmit\n```\n","_attachments":{},"homepage":"https://github.com/diasdavid/node-multiplex-stream-muxer","bugs":{"url":"https://github.com/diasdavid/node-multiplex-stream-muxer/issues"},"license":"MIT"}