{"_id":"dnode","_rev":"119563","name":"dnode","description":"freestyle rpc","dist-tags":{"latest":"1.2.2"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"time":{"modified":"2021-06-03T10:55:20.000Z","created":"2010-12-20T12:20:43.879Z","1.2.2":"2015-09-23T22:58:07.165Z","1.2.1":"2015-05-12T06:39:42.924Z","1.2.0":"2014-01-02T00:17:12.972Z","1.1.0":"2013-11-05T23:00:51.612Z","1.0.5":"2013-03-01T14:25:37.532Z","1.0.4":"2013-02-24T10:40:23.731Z","1.0.3":"2013-02-22T01:20:59.804Z","1.0.2":"2012-11-09T08:12:43.470Z","1.0.1":"2012-07-19T11:01:25.621Z","1.0.0":"2012-06-22T09:02:40.337Z","0.9.12":"2012-06-13T19:06:09.163Z","0.9.11":"2012-05-01T06:33:39.749Z","0.9.10":"2012-04-14T12:26:21.529Z","0.9.9":"2012-04-07T20:01:41.022Z","0.9.8":"2012-04-07T06:06:56.334Z","0.9.6":"2012-01-09T22:31:40.075Z","0.9.5":"2012-01-08T21:49:35.160Z","0.9.4":"2012-01-07T09:00:14.464Z","0.9.3":"2011-12-17T07:31:27.521Z","0.9.2":"2011-11-06T08:05:27.851Z","0.9.1":"2011-11-04T01:20:11.189Z","0.9.0":"2011-11-03T22:54:09.426Z","0.8.2":"2011-08-22T20:10:54.727Z","0.8.1":"2011-08-11T12:56:38.257Z","0.8.0":"2011-08-11T12:28:45.748Z","0.7.5":"2011-08-09T01:02:06.451Z","0.7.4":"2011-07-27T19:24:35.961Z","0.7.3":"2011-06-22T01:11:45.509Z","0.7.2":"2011-06-10T08:13:47.293Z","0.7.1":"2011-06-09T06:30:05.584Z","0.7.0":"2011-06-09T05:41:13.241Z","0.6.12":"2011-05-28T20:38:33.959Z","0.6.11":"2011-05-18T23:03:08.279Z","0.6.10":"2011-05-12T17:29:05.943Z","0.6.9":"2011-04-23T22:08:19.131Z","0.6.8":"2011-04-21T11:24:39.084Z","0.6.7":"2011-04-07T06:26:10.504Z","0.6.6":"2011-04-02T16:20:17.037Z","0.6.5":"2011-03-31T18:49:41.196Z","0.6.4":"2011-03-31T17:22:27.846Z","0.6.3":"2011-03-30T04:02:18.876Z","0.6.2":"2011-03-28T15:47:02.472Z","0.6.1":"2011-03-24T09:08:34.506Z","0.6.0":"2011-03-24T02:01:26.051Z","0.5.9":"2011-03-22T13:43:20.021Z","0.5.8":"2011-03-19T00:50:40.738Z","0.5.7":"2011-03-02T13:03:51.738Z","0.5.6":"2011-02-21T04:50:36.655Z","0.5.5":"2011-02-21T02:29:40.713Z","0.5.4":"2011-02-16T10:48:48.540Z","0.5.3":"2011-02-15T22:29:50.396Z","0.5.2":"2011-01-28T01:22:20.495Z","0.5.1":"2011-01-28T01:00:14.242Z","0.5.0":"2011-01-26T07:26:32.799Z","0.4.5":"2011-01-10T08:35:57.496Z","0.4.4":"2011-01-10T07:09:26.115Z","0.4.3":"2011-01-05T06:28:24.117Z","0.4.2":"2010-12-29T08:58:46.694Z","0.4.1":"2010-12-26T09:18:28.584Z","0.4.0":"2010-12-20T12:20:43.879Z","0.2.10":"2010-12-20T12:20:43.879Z","0.2.13":"2010-12-20T12:20:43.879Z","0.2.4":"2010-12-20T12:20:43.879Z","0.2.5":"2010-12-20T12:20:43.879Z","0.2.6":"2010-12-20T12:20:43.879Z","0.2.7":"2010-12-20T12:20:43.879Z","0.2.9":"2010-12-20T12:20:43.879Z","0.3.0":"2010-12-20T12:20:43.879Z","0.3.1":"2010-12-20T12:20:43.879Z","0.3.2":"2010-12-20T12:20:43.879Z","0.3.3":"2010-12-20T12:20:43.879Z","0.3.5":"2010-12-20T12:20:43.879Z","0.3.6":"2010-12-20T12:20:43.879Z","0.3.7":"2010-12-20T12:20:43.879Z","0.3.8":"2010-12-20T12:20:43.879Z","0.3.9":"2010-12-20T12:20:43.879Z","0.3.10":"2010-12-20T12:20:43.879Z","0.3.11":"2010-12-20T12:20:43.879Z","0.2.12":"2010-12-20T12:20:43.879Z","0.2.11":"2010-12-20T12:20:43.879Z"},"users":{"coverslide":true,"isaacs":true,"thejh":true,"tblobaum":true,"vasc":true,"dekz":true,"qbert65536":true,"guybrush":true,"pureppl":true,"mk":true,"fgribreau":true,"m42am":true,"shama":true,"bencevans":true,"leesei":true,"joshthegeek":true,"pragmadash":true,"gmturbo":true,"hengkiardo":true,"jamescostian":true,"maxgfeller":true,"ryanj":true,"gabeio":true,"jefrancomix":true,"brandonpapworth":true,"nickleefly":true,"pengzhisun":true,"jazzhuang":true,"smallhelm":true,"theheros":true,"esp":true,"clholzin":true,"tunnckocore":true,"pdedkov":true,"kurt.pattyn":true,"cking":true,"softwind":true,"jerrywu":true,"leonning":true,"detj":true,"j.su":true,"bojand":true,"dexteryy":true,"davidatkinsondoyle":true,"gerst20051":true,"xxsnake28":true,"shiningray":true,"jetbug123":true,"caffellatte":true,"icerainnuaa":true,"lestad":true,"danielpavelic":true,"lusai":true,"akiva":true,"isaacvitor":true,"dhanya-kr":true},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"repository":{"type":"git","url":"git+ssh://git@github.com/substack/dnode.git"},"versions":{"1.2.2":{"name":"dnode","version":"1.2.2","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"git+ssh://git@github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"^1.0.0"},"optionalDependencies":{"weak":"^1.0.0"},"devDependencies":{"tape":"~2.3.2"},"scripts":{"test":"tape test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/10","chrome/latest","chrome/canary","firefox/10","firefox/latest","firefox/nightly","safari/latest","opera/11.0..latest","iphone/6","ipad/6","android-browser/latest"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"gitHead":"32e8a7e36f4603672b17fa4b0fbecc05c66022df","bugs":{"url":"https://github.com/substack/dnode/issues"},"homepage":"https://github.com/substack/dnode#readme","_id":"dnode@1.2.2","_shasum":"4ac3cfe26e292b3b39b8258ae7d94edc58132efa","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"},"dist":{"shasum":"4ac3cfe26e292b3b39b8258ae7d94edc58132efa","size":14979,"noattachment":false,"key":"/dnode/-/dnode-1.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.2.2.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1443049087165,"_cnpm_publish_time":1443049087165,"_hasShrinkwrap":false},"1.2.1":{"name":"dnode","version":"1.2.1","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"git+ssh://git@github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.4.1"},"optionalDependencies":{"weak":"~0.4.1"},"devDependencies":{"tape":"~2.3.2"},"scripts":{"test":"tape test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/10","chrome/latest","chrome/canary","firefox/10","firefox/latest","firefox/nightly","safari/latest","opera/11.0..latest","iphone/6","ipad/6","android-browser/latest"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"gitHead":"856071b006b23c305eccc1ea94224bb3366c7500","bugs":{"url":"https://github.com/substack/dnode/issues"},"homepage":"https://github.com/substack/dnode#readme","_id":"dnode@1.2.1","_shasum":"8468fdecdc8059f76c04593cd38db3a7baddf1d0","_from":".","_npmVersion":"2.9.0","_nodeVersion":"2.0.0","_npmUser":{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"dist":{"shasum":"8468fdecdc8059f76c04593cd38db3a7baddf1d0","size":10582,"noattachment":false,"key":"/dnode/-/dnode-1.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.2.1.tgz"},"directories":{},"publish_time":1431412782924,"_cnpm_publish_time":1431412782924,"_hasShrinkwrap":false},"1.2.0":{"name":"dnode","version":"1.2.0","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.3.0"},"optionalDependencies":{"weak":"~0.3.0"},"devDependencies":{"tape":"~2.3.2"},"scripts":{"test":"tape test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/10","chrome/latest","chrome/canary","firefox/10","firefox/latest","firefox/nightly","safari/latest","opera/11.0..latest","iphone/6","ipad/6","android-browser/latest"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/dnode/issues"},"homepage":"https://github.com/substack/dnode","_id":"dnode@1.2.0","dist":{"shasum":"ac98b3fc3ce78e2d60f66147d07cba7b5d9559fe","size":149764,"noattachment":false,"key":"/dnode/-/dnode-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.2.0.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1388621832972,"_hasShrinkwrap":false,"_cnpm_publish_time":1388621832972},"1.1.0":{"name":"dnode","version":"1.1.0","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.4.0","tape":"~0.2.2"},"scripts":{"test":"tap test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/20..latest","chrome/canary","firefox/10..latest","safari/latest","opera/11.0..latest","iphone/6","ipad/6","android-browser/latest"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/dnode/issues"},"_id":"dnode@1.1.0","dist":{"shasum":"9d657c948e71fbd25478033f322d555caca3f020","size":417837,"noattachment":false,"key":"/dnode/-/dnode-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.1.0.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1383692451612,"_hasShrinkwrap":false,"_cnpm_publish_time":1383692451612},"1.0.5":{"name":"dnode","version":"1.0.5","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.4.0","tape":"~0.2.2"},"scripts":{"test":"tap test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/20..latest","firefox/10..latest","safari/latest","opera/11.0..latest","iphone/6","ipad/6"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"readmeFilename":"readme.markdown","_id":"dnode@1.0.5","dist":{"shasum":"6c9f78eaf482eb525fa14de60c2652a88e03d59c","size":421289,"noattachment":false,"key":"/dnode/-/dnode-1.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.5.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1362147937532,"_hasShrinkwrap":false,"_cnpm_publish_time":1362147937532},"1.0.4":{"name":"dnode","version":"1.0.4","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.3.3","tape":"~0.2.2"},"scripts":{"test":"tap test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/20..latest","firefox/10..latest","safari/latest","opera/11.0..latest","iphone/6","ipad/6"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"readmeFilename":"readme.markdown","_id":"dnode@1.0.4","dist":{"shasum":"337a4940a4177f6eed5eb07ca782e78bf069c036","size":421292,"noattachment":false,"key":"/dnode/-/dnode-1.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.4.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1361702423731,"_hasShrinkwrap":false,"_cnpm_publish_time":1361702423731},"1.0.3":{"name":"dnode","version":"1.0.3","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.3.3","tape":"~0.2.2"},"scripts":{"test":"tap test/*.js test/server/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6","ie/7","ie/8","ie/9","ie/10","chrome/20","chrome/latest","firefox/10","firefox/15","firefox/latest","safari/latest","opera/11.0","opera/latest","iphone/6","ipad/6"]},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"readmeFilename":"readme.markdown","_id":"dnode@1.0.3","dist":{"shasum":"74ea31187228c8d91157f0c09ea8c63c33071322","size":421208,"noattachment":false,"key":"/dnode/-/dnode-1.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.3.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"directories":{},"publish_time":1361496059804,"_hasShrinkwrap":false,"_cnpm_publish_time":1361496059804},"1.0.2":{"name":"dnode","version":"1.0.2","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.2.5","browserify":"~1.13.0"},"scripts":{"test":"tap test/*.js"},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@1.0.2","dist":{"shasum":"5d2ce319f231e23f4ad2b69f83baaea4b3eed1ae","size":14194,"noattachment":false,"key":"/dnode/-/dnode-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.2.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1352448763470,"_hasShrinkwrap":false,"_cnpm_publish_time":1352448763470},"1.0.1":{"name":"dnode","version":"1.0.1","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.2.5","browserify":"~1.13.0"},"scripts":{"test":"tap test/*.js"},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@1.0.1","dist":{"shasum":"0977cdd2371ed7af9ff3f353acb1a04612880b86","size":14061,"noattachment":false,"key":"/dnode/-/dnode-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.1.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1342695685621,"_hasShrinkwrap":false,"_cnpm_publish_time":1342695685621},"1.0.0":{"name":"dnode","version":"1.0.0","description":"freestyle rpc","main":"./index.js","keywords":["rpc","callbacks"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"dnode-protocol":"~0.2.2","jsonify":"~0.0.0","weak":"~0.2.1"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7"},"scripts":{"test":"tap test/*.js"},"browserify":"browser.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@1.0.0","dist":{"shasum":"d7fe7f3e3c48c04ffd1e36857f2b175a9a97d5e5","size":14044,"noattachment":false,"key":"/dnode/-/dnode-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-1.0.0.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1340355760337,"_hasShrinkwrap":false,"_cnpm_publish_time":1340355760337},"0.9.12":{"name":"dnode","version":"0.9.12","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","dnode-protocol":"~0.1.2","jsonify":"0.0.x"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7","uglify-js":"~1.2.5","express":"~2.5.9"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.6.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.12","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.19","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"9d1ab6b3532783fbcdd6e4e778e576a8bf9fa9f7","size":42208,"noattachment":false,"key":"/dnode/-/dnode-0.9.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.12.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1339614369163,"_hasShrinkwrap":false,"_cnpm_publish_time":1339614369163},"0.9.11":{"name":"dnode","version":"0.9.11","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","dnode-protocol":"~0.1.2","jsonify":"0.0.x"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7","uglify-js":"~1.2.5","express":"~2.5.9"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.11","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.19","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"6ed7870d9b0b90fefc2e575a0ebe5ae50cb6bdbb","size":42162,"noattachment":false,"key":"/dnode/-/dnode-0.9.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.11.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1335854019749,"_hasShrinkwrap":false,"_cnpm_publish_time":1335854019749},"0.9.10":{"name":"dnode","version":"0.9.10","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","dnode-protocol":"~0.1.2","jsonify":"0.0.x"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7","uglify-js":"~1.2.5","express":"~2.5.9"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.10","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"0c741298470b55de7313a5cd76488327734b8f1c","size":42519,"noattachment":false,"key":"/dnode/-/dnode-0.9.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.10.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1334406381529,"_hasShrinkwrap":false,"_cnpm_publish_time":1334406381529},"0.9.9":{"name":"dnode","version":"0.9.9","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","dnode-protocol":"~0.1.2","jsonify":"0.0.x"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7","uglify-js":"~1.2.5","express":"~2.5.9"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.9","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"cb7d2672428f95eedb41e46d95ebfde7193c2bf3","size":42507,"noattachment":false,"key":"/dnode/-/dnode-0.9.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.9.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1333828901022,"_hasShrinkwrap":false,"_cnpm_publish_time":1333828901022},"0.9.8":{"name":"dnode","version":"0.9.8","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","dnode-protocol":"~0.1.2","jsonify":"0.0.x"},"devDependencies":{"tap":"~0.2.4","browserify":"~1.10.7","uglify-js":"~1.2.5","express":"~2.5.9"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.8","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"c417bd82a7db8e30846dabe46cfc4323659327b8","size":42482,"noattachment":false,"key":"/dnode/-/dnode-0.9.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.8.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1333778816334,"_hasShrinkwrap":false,"_cnpm_publish_time":1333778816334},"0.9.6":{"name":"dnode","version":"0.9.6","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"005d087683488134f81c179c9bcc0331de7c6caf","size":41363,"noattachment":false,"key":"/dnode/-/dnode-0.9.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.6.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1326148300075,"_hasShrinkwrap":false,"_cnpm_publish_time":1326148300075},"0.9.5":{"name":"dnode","version":"0.9.5","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"397d1cc46b4eb953e01734e0a843aa6f42e2f2a5","size":41376,"noattachment":false,"key":"/dnode/-/dnode-0.9.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.5.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1326059375160,"_hasShrinkwrap":false,"_cnpm_publish_time":1326059375160},"0.9.4":{"name":"dnode","version":"0.9.4","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"a07abe07f51db372dd7c2a3f796169cf41059a06","size":41382,"noattachment":false,"key":"/dnode/-/dnode-0.9.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.4.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1325926814464,"_hasShrinkwrap":false,"_cnpm_publish_time":1325926814464},"0.9.3":{"name":"dnode","version":"0.9.3","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"1b8f816e2e979ec8f7c3bdc1b76819325e3cc76e","size":41299,"noattachment":false,"key":"/dnode/-/dnode-0.9.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.3.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1324107087521,"_hasShrinkwrap":false,"_cnpm_publish_time":1324107087521},"0.9.2":{"name":"dnode","version":"0.9.2","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"e856c9081f0a9db2dacc21b2d9ef9a320b722cad","size":40435,"noattachment":false,"key":"/dnode/-/dnode-0.9.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.2.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1320566727851,"_hasShrinkwrap":false,"_cnpm_publish_time":1320566727851},"0.9.1":{"name":"dnode","version":"0.9.1","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"0.8.6","socket.io-client":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"a1f21c398ffc682321b7934235c4a616e1473bc0","size":40411,"noattachment":false,"key":"/dnode/-/dnode-0.9.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.1.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1320369611189,"_hasShrinkwrap":false,"_cnpm_publish_time":1320369611189},"0.9.0":{"name":"dnode","version":"0.9.0","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":"https://github.com/substack/socket.io-client/tarball/master","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":"0.1.x","jsonify":"0.0.x"},"devDependencies":{"tap":"0.0.x","browserify":"1.4.x","uglify-js":"1.0.6"},"scripts":{"test":"tap test/*.js"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"dnode@0.9.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"7603915d5674a784a8db4ffdee22a8cefad1536d","size":132328,"noattachment":false,"key":"/dnode/-/dnode-0.9.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.9.0.tgz"},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1320360849426,"_hasShrinkwrap":false,"_cnpm_publish_time":1320360849426},"0.8.2":{"name":"dnode","version":"0.8.2","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":">=0.0.12 <0.1"},"devDependencies":{"expresso":"0.7.x","browserify":"1.4.x","uglify-js":"1.0.6"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.8.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"aba3d45641689942f87f8bd2e7d66dc804c4e95c","size":53521,"noattachment":false,"key":"/dnode/-/dnode-0.8.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.8.2.tgz"},"scripts":{},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1314043854727,"_hasShrinkwrap":false,"_cnpm_publish_time":1314043854727},"0.8.1":{"name":"dnode","version":"0.8.1","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":">=0.0.12 <0.1"},"devDependencies":{"expresso":"0.7.x","browserify":"1.4.x","uglify-js":"1.0.6"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.8.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"abaaa3e0a24b1d843240b37d5bf5589bd731cac8","size":53498,"noattachment":false,"key":"/dnode/-/dnode-0.8.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.8.1.tgz"},"scripts":{},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1313067398257,"_hasShrinkwrap":false,"_cnpm_publish_time":1313067398257},"0.8.0":{"name":"dnode","version":"0.8.0","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":"0.4.x","dnode-protocol":">=0.0.12 <0.1"},"devDependencies":{"expresso":"0.7.x","browserify":"1.4.x","uglify-js":"1.0.6"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.8.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"6fffd64aa5d21fffb1a4748421c75a284e9d3d87","size":53319,"noattachment":false,"key":"/dnode/-/dnode-0.8.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.8.0.tgz"},"scripts":{},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1313065725748,"_hasShrinkwrap":false,"_cnpm_publish_time":1313065725748},"0.7.5":{"name":"dnode","version":"0.7.5","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":">=0.3.1 <0.4","browserify":">=1.1.3 <1.2","dnode-protocol":">=0.0.12 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"d9c675e698dfef00d672f14389ad3fae1642c7dd","size":36842,"noattachment":false,"key":"/dnode/-/dnode-0.7.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.5.tgz"},"scripts":{},"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"publish_time":1312851726451,"_hasShrinkwrap":false,"_cnpm_publish_time":1312851726451},"0.7.4":{"name":"dnode","version":"0.7.4","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":">=0.3.1 <0.4","browserify":">=1.1.3 <1.2","dnode-protocol":">=0.0.10 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"b395b365fddcb925421d9870577c22453d89ab38","size":36887,"noattachment":false,"key":"/dnode/-/dnode-0.7.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.4.tgz"},"scripts":{},"publish_time":1311794675961,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1311794675961},"0.7.3":{"name":"dnode","version":"0.7.3","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.5 <1.1","traverse":">=0.3.1 <0.4","browserify":">=1.1.3 <1.2","dnode-protocol":">=0.0.10 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":"browser/index.js","engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"5c348fea68c42e55cc93782d1ae6e82fb47045bb","size":36850,"noattachment":false,"key":"/dnode/-/dnode-0.7.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.3.tgz"},"scripts":{},"publish_time":1308705105509,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1308705105509},"0.7.2":{"name":"dnode","version":"0.7.2","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":">=0.5.2 <0.6","dnode-protocol":">=0.0.9 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"],"dependencies":{}},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"ad9968605216931b9a1d22ce75c05d2deb653ad7","size":71620,"noattachment":false,"key":"/dnode/-/dnode-0.7.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.2.tgz"},"scripts":{},"publish_time":1307693627293,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1307693627293},"0.7.1":{"name":"dnode","version":"0.7.1","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":"1.0.x","dnode-protocol":">=0.0.9 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"],"dependencies":{}},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"d581c24743f7e3985051008a42c06d2362ebb4a4","size":36582,"noattachment":false,"key":"/dnode/-/dnode-0.7.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.1.tgz"},"scripts":{},"publish_time":1307601005584,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1307601005584},"0.7.0":{"name":"dnode","version":"0.7.0","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":"1.0.x","dnode-protocol":">=0.0.9 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"],"dependencies":{}},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.7.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"3f877e2b2eec10150e6fb6ab9f6ec88299a59ff6","size":36585,"noattachment":false,"key":"/dnode/-/dnode-0.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.7.0.tgz"},"scripts":{},"publish_time":1307598073241,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1307598073241},"0.6.12":{"name":"dnode","version":"0.6.12","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":">=0.4.13 <0.5","dnode-protocol":">=0.0.9 <0.1"},"devDependencies":{"expresso":">=0.7.6 <0.8"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.12","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"f49e424b1153127b97782b58447efde285277c21","size":35941,"noattachment":false,"key":"/dnode/-/dnode-0.6.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.12.tgz"},"scripts":{},"publish_time":1306615113959,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1306615113959},"0.6.11":{"name":"dnode","version":"0.6.11","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":">=0.4.1 <0.5","dnode-protocol":">=0.0.8"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"devDependencies":{},"_id":"dnode@0.6.11","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"7b6678557bf41234bd786cab73754b97d95a9150","size":35898,"noattachment":false,"key":"/dnode/-/dnode-0.6.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.11.tgz"},"scripts":{},"publish_time":1305759788279,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1305759788279},"0.6.10":{"name":"dnode","version":"0.6.10","description":"freestyle RPC","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1 <0.7","lazy":">=1.0.2 <1.1","traverse":">=0.3.1 <0.4","browserify":">=0.3.6 <0.4","dnode-protocol":">=0.0.8"},"bundleDependencies":["dnode-protocol"],"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"devDependencies":{},"_id":"dnode@0.6.10","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"bb4fc050698a29540d72cdda8e8b06cc73401f71","size":40952,"noattachment":false,"key":"/dnode/-/dnode-0.6.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.10.tgz"},"scripts":{},"publish_time":1305221345943,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1305221345943},"0.6.9":{"name":"dnode","version":"0.6.9","description":"freestyle RPC like a boss","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.7"},"bundleDependencies":["dnode-protocol"],"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"devDependencies":{},"_id":"dnode@0.6.9","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.1rc9","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"c2f70bd12c3c22fe137b81283f003b90db7635e3","size":35666,"noattachment":false,"key":"/dnode/-/dnode-0.6.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.9.tgz"},"publish_time":1303596499131,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1303596499131},"0.6.8":{"name":"dnode","version":"0.6.8","description":"freestyle RPC like a boss","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":".","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.7"},"bundleDependencies":["dnode-protocol"],"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"devDependencies":{},"_id":"dnode@0.6.8","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.1rc9","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"0d55d5acb28813786550afdda349b42f62d2ea60","size":35588,"noattachment":false,"key":"/dnode/-/dnode-0.6.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.8.tgz"},"publish_time":1303385079084,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1303385079084},"0.6.7":{"name":"dnode","version":"0.6.7","description":"freestyle RPC like a boss","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.18","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"6c2c6912f7bc9553450b09648a57cb99b419ecc4","size":34709,"noattachment":false,"key":"/dnode/-/dnode-0.6.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.7.tgz"},"publish_time":1302157570504,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1302157570504},"0.6.6":{"name":"dnode","version":"0.6.6","description":"freestyle RPC like a boss","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.18","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"20d81f0971b11d28474077f42c33cc4f574c67eb","size":34927,"noattachment":false,"key":"/dnode/-/dnode-0.6.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.6.tgz"},"publish_time":1301761217037,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1301761217037},"0.6.5":{"name":"dnode","version":"0.6.5","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"f4e2165d9d200c5a7fc461eb2a0beb2c7ae0a724","size":34760,"noattachment":false,"key":"/dnode/-/dnode-0.6.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.5.tgz"},"publish_time":1301597381196,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1301597381196},"0.6.4":{"name":"dnode","version":"0.6.4","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"b2b2b7639a4b9d0074ae7f954a800ee3b5056240","size":34757,"noattachment":false,"key":"/dnode/-/dnode-0.6.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.4.tgz"},"publish_time":1301592147846,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1301592147846},"0.6.3":{"name":"dnode","version":"0.6.3","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.9","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"be5b997574f48538ee51e8a4f762654bbb47df87","size":34742,"noattachment":false,"key":"/dnode/-/dnode-0.6.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.3.tgz"},"publish_time":1301457738876,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1301457738876},"0.6.2":{"name":"dnode","version":"0.6.2","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.8","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"255051a52b27c0d860508f4b5ffb3c89ac0f0618","size":34745,"noattachment":false,"key":"/dnode/-/dnode-0.6.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.2.tgz"},"publish_time":1301327222472,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1301327222472},"0.6.1":{"name":"dnode","version":"0.6.1","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.6","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","main":"./browser/index.js","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"91ce07ac93b7e4f62153f4a13cb5017e81b37265","size":35044,"noattachment":false,"key":"/dnode/-/dnode-0.6.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.1.tgz"},"publish_time":1300957714506,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1300957714506},"0.6.0":{"name":"dnode","version":"0.6.0","description":"Execute remote callbacks with a JSON-based protocol. RMI for network sockets and socket.io too!","main":"./index.js","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"directories":{"lib":"./lib","examples":"./examples"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.2","traverse":">=0.3.1","browserify":">=0.2.2","dnode-protocol":">=0.0.5"},"browserify":{"name":"dnode","base":"./browser","require":["dnode-protocol"]},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"dnode@0.6.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"8d8dc835a574cf6e8a2705f1d479c7bd7c3be44f","size":35119,"noattachment":false,"key":"/dnode/-/dnode-0.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.6.0.tgz"},"publish_time":1300932086051,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1300932086051},"0.5.9":{"name":"dnode","version":"0.5.9","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode.js","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.3.1","hashish":">=0.0.2","recon":">=0.0.5"},"engine":{"node":">=0.4.0"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.9","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"5d4b0e164ba07fe4d02b39c8ee5c16b125eb8b28","size":28957,"noattachment":false,"key":"/dnode/-/dnode-0.5.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.9.tgz"},"publish_time":1300801400021,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1300801400021},"0.5.8":{"name":"dnode","version":"0.5.8","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode.js","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.3.1","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.8","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"63bf86170190888a25f8df2d2b33a668f446a707","size":28942,"noattachment":false,"key":"/dnode/-/dnode-0.5.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.8.tgz"},"publish_time":1300495840738,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1300495840738},"0.5.7":{"name":"dnode","version":"0.5.7","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode.js","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"git://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.3.1","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.7","_nodeVersion":"v0.5.0-pre","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"31f9e8201bd9a20d5860579e4d7c1e61e4529422","size":29004,"noattachment":false,"key":"/dnode/-/dnode-0.5.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.7.tgz"},"publish_time":1299071031738,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1299071031738},"0.5.6":{"name":"dnode","version":"0.5.6","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.3.1","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.18","_nodeVersion":"v0.3.8-pre","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"9adaa5d702dc58c3124e1085b30cce96bb17f940","size":29229,"noattachment":false,"key":"/dnode/-/dnode-0.5.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.6.tgz"},"publish_time":1298263836655,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1298263836655},"0.5.5":{"name":"dnode","version":"0.5.5","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.2.0 && <0.3.0","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.18","_nodeVersion":"v0.3.8-pre","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"cee0def8d3452ae6f711a9bcfd2651659e7bfa82","size":26137,"noattachment":false,"key":"/dnode/-/dnode-0.5.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.5.tgz"},"publish_time":1298255380713,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1298255380713},"0.5.4":{"name":"dnode","version":"0.5.4","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","main":"./lib/dnode","directories":{"lib":"./lib"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.18","_nodeVersion":"v0.3.8-pre","files":[""],"_defaultsLoaded":true,"dist":{"shasum":"a65b304784b20f8555729e95fcec3c4539b3c7ee","size":28423,"noattachment":false,"key":"/dnode/-/dnode-0.5.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.4.tgz"},"publish_time":1297853328540,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1297853328540},"0.5.3":{"name":"dnode","version":"0.5.3","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","hashish":">=0.0.2","recon":">=0.0.5"},"engine":["node >=0.2.0"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net/"},"_id":"dnode@0.5.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.18","_nodeVersion":"v0.3.8-pre","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"ec5aa246d34bda5ffa6608a964ed6c1529998b07","size":28460,"noattachment":false,"key":"/dnode/-/dnode-0.5.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.3.tgz"},"publish_time":1297808990396,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1297808990396},"0.5.2":{"name":"dnode","version":"0.5.2","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","modules":{"index":"./lib/dnode","web":"./lib/web"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.5.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.15","_nodeVersion":"v0.2.5","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"92897ef45db452e3d4406bff757f43ac2b911dfa","size":28912,"noattachment":false,"key":"/dnode/-/dnode-0.5.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.2.tgz"},"publish_time":1296177740495,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1296177740495},"0.5.1":{"name":"dnode","version":"0.5.1","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","modules":{"index":"./lib/dnode","web":"./lib/web"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.5.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.15","_nodeVersion":"v0.2.5","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"c93c1363a464cf5326f304bd253241323151d4d4","size":28808,"noattachment":false,"key":"/dnode/-/dnode-0.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.1.tgz"},"publish_time":1296176414242,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1296176414242},"0.5.0":{"name":"dnode","version":"0.5.0","description":"Call remote methods and callbacks with a JSON-based protocol. RMI for network sockets and the browser too!","modules":{"index":"./lib/dnode","web":"./lib/web"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.5.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.15","_nodeVersion":"v0.2.5","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"4079ecd129b7e480be41a189e31d9d67e8b99cf2","size":28827,"noattachment":false,"key":"/dnode/-/dnode-0.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.5.0.tgz"},"publish_time":1296026792799,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1296026792799},"0.4.5":{"name":"dnode","version":"0.4.5","description":"JSON-based asynchronous RMI between nodes and the browser. Throw callbacks around like nobody's business.","modules":{"index":"./lib/dnode","web":"./lib/web"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.14","_nodeVersion":"v0.2.5","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"35e65d40c69a635ba0ef537e9ff68fef96bcdbbf","size":28453,"noattachment":false,"key":"/dnode/-/dnode-0.4.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.5.tgz"},"publish_time":1294648557496,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1294648557496},"0.4.4":{"name":"dnode","version":"0.4.4","description":"JSON-based asynchronous RMI between nodes and the browser. Throw callbacks around like nobody's business.","modules":{"index":"./lib/dnode","web":"./lib/web"},"keywords":["message passing","rpc","rmi","drb","remote","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.14","_nodeVersion":"v0.2.5","directories":{"lib":"./lib"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"04983a17bb47c46367cfc6af7d2d37dfde1ad382","size":28462,"noattachment":false,"key":"/dnode/-/dnode-0.4.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.4.tgz"},"publish_time":1294643366115,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1294643366115},"0.4.3":{"name":"dnode","version":"0.4.3","description":"Transparently call remote callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"keywords":["rpc","rmi","remote","network","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"9035867dc5df9bab637d94a4285734a59fb1d901","size":29379,"noattachment":false,"key":"/dnode/-/dnode-0.4.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.3.tgz"},"directories":{},"publish_time":1294208904117,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1294208904117},"0.4.2":{"name":"dnode","version":"0.4.2","description":"Transparently call remote callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"keywords":["rpc","rmi","remote","network","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"17280e2d1fcba5b0309e325e41dc8d6124e2b6ae","size":29291,"noattachment":false,"key":"/dnode/-/dnode-0.4.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.2.tgz"},"directories":{},"publish_time":1293613126694,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1293613126694},"0.4.1":{"name":"dnode","version":"0.4.1","description":"Transparently call remote callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"keywords":["rpc","rmi","remote","network","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","recon":">=0.0.5"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"07819826c4689304fc5a58aa67151556d61c3545","size":29209,"noattachment":false,"key":"/dnode/-/dnode-0.4.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.1.tgz"},"directories":{},"publish_time":1293355108584,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1293355108584},"0.4.0":{"name":"dnode","version":"0.4.0","description":"Transparently call remote callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"keywords":["rpc","rmi","remote","network","communication","websockets","socket.io"],"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.6.1","lazy":">=1.0.1","traverse":">=0.0.8","connect":">=0.2.0"},"engine":["node >=0.2.0"],"_id":"dnode@0.4.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"645d11abcb36e5efdf5505843c8a9edbb4d55afa","size":28502,"noattachment":false,"key":"/dnode/-/dnode-0.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.4.0.tgz"},"directories":{},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.10":{"name":"dnode","version":"0.2.10","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.10","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"40fdf6ef30239d625b44d1ba411b536e52901eb2","size":36914,"noattachment":false,"key":"/dnode/-/dnode-0.2.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.10.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.13":{"name":"dnode","version":"0.2.13","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.13","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"a3cadc53f0dbeba4ff30a6a91f4656712245325e","size":37029,"noattachment":false,"key":"/dnode/-/dnode-0.2.13.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.13.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.4":{"name":"dnode","version":"0.2.4","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"680f4fd637ff834c1a83f497e504a8e0db80177d","size":31809,"noattachment":false,"key":"/dnode/-/dnode-0.2.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.4.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.5":{"name":"dnode","version":"0.2.5","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"1306672692cd99d942db4a352878f05075c2e5af","size":34018,"noattachment":false,"key":"/dnode/-/dnode-0.2.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.5.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.6":{"name":"dnode","version":"0.2.6","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.6","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"f8239a74eaca465f70f635931d0e00736ddba9e4","size":34923,"noattachment":false,"key":"/dnode/-/dnode-0.2.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.6.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.7":{"name":"dnode","version":"0.2.7","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.7","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"ead972564394cd670fe602b28681ba90a2741203","size":35373,"noattachment":false,"key":"/dnode/-/dnode-0.2.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.7.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.9":{"name":"dnode","version":"0.2.9","descrption":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.9","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"545dcc25c3ac10bc8dd3ce1e3503bce074b9cde6","size":36841,"noattachment":false,"key":"/dnode/-/dnode-0.2.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.9.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.0":{"name":"dnode","version":"0.3.0","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"7b707a52409cb2c85cf0fc6bfd0b33e838eb536a","size":38826,"noattachment":false,"key":"/dnode/-/dnode-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.0.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.1":{"name":"dnode","version":"0.3.1","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"51acfe099f3edc83cec1947ce9dee8766e1a2210","size":39095,"noattachment":false,"key":"/dnode/-/dnode-0.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.1.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.2":{"name":"dnode","version":"0.3.2","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"2b90569e8aeb1dc70ae006d3f5c8f743a8359d3f","size":39518,"noattachment":false,"key":"/dnode/-/dnode-0.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.2.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.3":{"name":"dnode","version":"0.3.3","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"4b9fa3620980498ebbec30fd58a1361ee3c751ee","size":39637,"noattachment":false,"key":"/dnode/-/dnode-0.3.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.3.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.5":{"name":"dnode","version":"0.3.5","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"8e458a76f2df756a4cd6459a8490dcefe351e512","size":40041,"noattachment":false,"key":"/dnode/-/dnode-0.3.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.5.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.6":{"name":"dnode","version":"0.3.6","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.6","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"038e047dc3fa5a974fcdd7a28835bd94bd261c3d","size":40073,"noattachment":false,"key":"/dnode/-/dnode-0.3.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.6.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.7":{"name":"dnode","version":"0.3.7","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.2","lazy":">=1.0.1","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.7","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"e0989b87da3a54177c171ab1400918e79d1ee488","size":44561,"noattachment":false,"key":"/dnode/-/dnode-0.3.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.7.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.8":{"name":"dnode","version":"0.3.8","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","lazy":">=1.0.1","traverse":">=0.0.8","connect":">=0.2.0"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.8","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"d79f231a6efbdd07db91442b9ae5d9174f6cf778","size":47009,"noattachment":false,"key":"/dnode/-/dnode-0.3.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.8.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.9":{"name":"dnode","version":"0.3.9","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","lazy":">=1.0.1","traverse":">=0.0.8","connect":">=0.2.0"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.9","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.5-1","_nodeVersion":"v0.2.0","dist":{"shasum":"ea52fd3dece9e00e9af9b512cdc0bda488bdbff7","size":46724,"noattachment":false,"key":"/dnode/-/dnode-0.3.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.9.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.10":{"name":"dnode","version":"0.3.10","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","lazy":">=1.0.1","traverse":">=0.0.8","connect":">=0.2.0"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.10","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.8-1","_nodeVersion":"v0.2.5","dist":{"shasum":"c83af9a182e21a958697fe9227f1ee607e832394","size":45619,"noattachment":false,"key":"/dnode/-/dnode-0.3.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.10.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.3.11":{"name":"dnode","version":"0.3.11","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","lazy":">=1.0.1","traverse":">=0.0.8","connect":">=0.2.0"},"engine":["node >=0.1.100"],"_id":"dnode@0.3.11","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.8-1","_nodeVersion":"v0.2.5","dist":{"shasum":"0970f75a7226bbd6ca40c7000cdbc59c3f217ee2","size":45698,"noattachment":false,"key":"/dnode/-/dnode-0.3.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.3.11.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.12":{"name":"dnode","version":"0.2.12","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.12","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"8e5b7cb24788cdc74e5ab1811e3c7b877c324c80","size":36928,"noattachment":false,"key":"/dnode/-/dnode-0.2.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.12.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879},"0.2.11":{"name":"dnode","version":"0.2.11","description":"Asynchronous, bidirectional remote method calls with transparently wrapped callbacks","modules":{"index":"./lib/dnode","web":"./lib/web","events":"./lib/events"},"directories":{"test":"./test"},"repository":{"type":"git","url":"http://github.com/substack/dnode.git"},"dependencies":{"socket.io":">=0.5.1","bufferlist":">=0.0.4","traverse":">=0.0.8"},"engine":["node >=0.1.100"],"_id":"dnode@0.2.11","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"shasum":"4a9e7bf66b370ee29e3fc563c4d40a8001b2d102","size":36940,"noattachment":false,"key":"/dnode/-/dnode-0.2.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/dnode/download/dnode-0.2.11.tgz"},"publish_time":1292847643879,"maintainers":[{"name":"asavin","email":"box.for.postman@gmail.com"},{"name":"seethroughtrees","email":"seethroughtrees+npm@gmail.com"}],"_hasShrinkwrap":false,"_cnpm_publish_time":1292847643879}},"readme":"# dnode\n\ndnode is an asynchronous rpc system for node.js that lets you\ncall remote functions.\n\nYou can pass callbacks to remote functions, and the remote end can call\nthe functions you passed in with callbacks of its own and so on.\nIt's callbacks all the way down!\n\n[![browser support](https://ci.testling.com/substack/dnode.png)](http://ci.testling.com/substack/dnode)\n\n[![build status](https://secure.travis-ci.org/substack/dnode.png)](http://travis-ci.org/substack/dnode)\n\n![dnode: freestyle rpc](http://substack.net/images/dnode.png)\n\n# example\n\n## listen and connect\n\nserver:\n\n``` js\nvar dnode = require('dnode');\nvar server = dnode({\n    transform : function (s, cb) {\n        cb(s.replace(/[aeiou]{2,}/, 'oo').toUpperCase())\n    }\n});\nserver.listen(5004);\n```\n\nclient:\n\n``` js\nvar dnode = require('dnode');\n\nvar d = dnode.connect(5004);\nd.on('remote', function (remote) {\n    remote.transform('beep', function (s) {\n        console.log('beep => ' + s);\n        d.end();\n    });\n});\n```\n\noutput:\n\n```\n$ node server.js &\n[1] 27574\n$ node client.js\nbeep => BOOP\n```\n\n## streaming\n\nThe `.connect()` and `.listen()` calls in the previous example are just\nconvenience methods for piping to and from readable/writable streams.\nHere's the previous example with the streams set up explicitly:\n\nserver:\n\n``` js\nvar dnode = require('dnode');\nvar net = require('net');\n\nvar server = net.createServer(function (c) {\n    var d = dnode({\n        transform : function (s, cb) {\n            cb(s.replace(/[aeiou]{2,}/, 'oo').toUpperCase())\n        }\n    });\n    c.pipe(d).pipe(c);\n});\n\nserver.listen(5004);\n```\n\nclient:\n\n``` js\nvar dnode = require('dnode');\nvar net = require('net');\n\nvar d = dnode();\nd.on('remote', function (remote) {\n    remote.transform('beep', function (s) {\n        console.log('beep => ' + s);\n        d.end();\n    });\n});\n\nvar c = net.connect(5004);\nc.pipe(d).pipe(c);\n```\n\noutput:\n\n```\n$ node server.js &\n[1] 27586\n$ node client.js \nbeep => BOOP\n```\n\n## dnode in the browser\n\nSince dnode instances are just readable/writable streams, you can use them with\nany streaming transport, including in the browser!\n\nThis example uses the streaming interface provided by\n[shoe](https://github.com/substack/shoe), which is just a thin wrapper on top of\n[sockjs](http://sockjs.org/) that provides websockets with fallbacks.\n\nFirst whip up a server:\n\n``` js\nvar http = require('http');\nvar shoe = require('shoe');\nvar ecstatic = require('ecstatic')(__dirname + '/static');\nvar dnode = require('dnode');\n\nvar server = http.createServer(ecstatic);\nserver.listen(9999);\n\nvar sock = shoe(function (stream) {\n    var d = dnode({\n        transform : function (s, cb) {\n            var res = s.replace(/[aeiou]{2,}/, 'oo').toUpperCase();\n            cb(res);\n        }\n    });\n    d.pipe(stream).pipe(d);\n});\nsock.install(server, '/dnode');\n```\n\nThen write some browser code:\n\n``` js\nvar domready = require('domready');\nvar shoe = require('shoe');\nvar dnode = require('dnode');\n\ndomready(function () {\n    var result = document.getElementById('result');\n    var stream = shoe('/dnode');\n    \n    var d = dnode();\n    d.on('remote', function (remote) {\n        remote.transform('beep', function (s) {\n            result.textContent = 'beep => ' + s;\n        });\n    });\n    d.pipe(stream).pipe(d);\n});\n```\n\nInstall the dependencies for this example then compile the browser code with\n[browserify](https://github.com/substack/node-browserify):\n\n```\n$ npm install dnode shoe domready ecstatic\n$ npm install -g browserify\n$ browserify client.js -o static/bundle.js\n```\n\nNow drop a script tag into static/index.html:\n\n``` html\n<script src=\"/bundle.js\"></script>\n<div id=\"result\"></div>\n```\n\nand navigate to http://localhost:9999.\nYou should see `beep => BOOP` on the page!\n\nCheck out the\n[complete shoe example](https://github.com/substack/dnode/tree/master/example/shoe).\n\n# methods\n\n``` js\nvar dnode = require('dnode')\n```\n\n## var d = dnode(cons, opts={})\n\nCreate a new readable/writable dnode stream object `d`.\nAll the usual stream methods are at your disposal: pipe(), write(), end().\n\nIf `cons` is a function, it will be called `new cons(remote, d)` to create a new\ninstance object. Otherwise its value will be used directly. When `cons` is\ncalled as a function, the `remote` ref will be an empty unpopulated object.\n\nBy default, dnode uses weakmaps to garbage collect unused callbacks\nautomatically. This behavior prevents memory leaks in long-running connections.\n\nYou can turn weakmaps off by setting `opts.weak = false`.\n\n## d.connect(...)\n\nThis method is a shortcut for setting up a pipe between `d` and a new\n`net.connect()` stream.\n\nThe host, port, and callback arguments supplied will be inferred by their\ntypes.\n\nIf you pass a callback in as an argument, it will be added as a listener to the\n`'remote'` event.\n\nReturns the `d` object.\n\n## dnode.connect(...)\n\nShortcut to create a connection without a constructor.\n\n## d.listen(...)\n\nThis method is a shortcut for setting up a `net.createServer()` and piping\nnetwork streams to and from new dnode streams.\n\nThe host, port, and callback parameters will be inferred from the types of the\narguments.\n\nReturns a net server object that will also emit `'local'` and `'remote'` events\nfrom the underlying dnode streams..\n\n## dnode.listen(...)\n\nShortcut to create a listener without a constructor.\n\n# events\n\n## d.on('remote', cb)\n\nThis event fires with `cb(remote, d)` when the remote side of the connection\nhas constructed its instance.\n\n## d.on('local', cb)\n\nThis event fires right after the constructed instance has been created locally\nbut before it gets sent to the remote end so you can modify the ref object.\n\nThis event fires with `cb(ref, d)` where `ref` is the local instance object.\n\n## d.on('fail', cb)\n\nThis event fires when the remote end causes errors in the protocol layer.\n\nThese are non-fatal and can probably be ignored but you could also terminate the\nconnection here.\n\n## d.on('error', cb)\n\nThis event fires when local code causes errors in its callbacks.\nNot all errors can be caught here since some might be in async functions.\n\n## d.on('end', cb)\n\nThis event fires when the input stream finishes.\n\n# install\n\nWith [npm](http://npmjs.org) do:\n\n```\nnpm install dnode\n```\n\n# protocol\n\ndnode uses a newline-terminated JSON protocol\n[documented in the dnode-protocol project](https://github.com/substack/dnode-protocol/blob/master/doc/protocol.markdown#the-protocol).\n\n# dnode in other languages\n\nThese libraries implement the dnode protocol too so you can make RPC calls\nbetween scripts written in different languages.\n\n* [dnode-perl](http://github.com/substack/dnode-perl)\n* [dnode-ruby](http://github.com/substack/dnode-ruby)\n* [dnode-php](https://github.com/bergie/dnode-php)\n* [dnode-php-sync-client](https://github.com/erasys/dnode-php-sync-client)\n* [dnode-java](https://github.com/aslakhellesoy/dnode-java)\n\n# shameless plug\n\nWant to make sure your crazy javascript-heavy app still works in other\nbrowsers?\nGive [browserling](http://browserling.com) a spin!\nBrowsers in your browser. Powered by dnode.\n\n","_attachments":{},"homepage":"https://github.com/substack/dnode#readme","bugs":{"url":"https://github.com/substack/dnode/issues"}}