{"_id":"zenserver","_rev":"91-559e6e2cbe22bf25a9586e3d78fda3b8","name":"zenserver","description":"a lean and mean http router for node.js","dist-tags":{"latest":"1.7.9"},"versions":{"0.9.9":{"name":"zenserver","version":"0.9.9","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","js-yaml":"*","mustache":"*"},"devDependencies":{"hyperquest":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.9","dist":{"shasum":"fd7301e071e9dd3ceeb057e3c48c2b29141aa326","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.9.tgz","integrity":"sha512-5/BZkyXEv81qIGUfkgT0PtliY+rOKEes1C7EwIChiE20ot2r4hvjGh4i8dv6lCtzCDW4lM/CWqCjWFoVdAyziQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA5dKleL0SJXW58NVxXMKAwvIEwcBbQ6hxWUkR1q91FVAiBatA4oZ2Y0kpUSag1f+7KHA4BRYA/IoyYkAMIzgSIWUA=="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.16":{"name":"zenserver","version":"0.9.16","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","js-yaml":"*","mustache":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.16","dist":{"shasum":"8c59c488180ff6c7c7fc98a9ebf6767938065b38","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.16.tgz","integrity":"sha512-xe1JgmhNBn/NNUUJvtm7jJUC2H0FBIEv1zS5Y3AHK+Vr4/n5PEzmtPBnERMNkqw/0HCT6CZ4Vn31zcqGc3k+uw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDL7R0xN7iBolf6QcJitgmQ9gnrrzfHTU3ZYgn4izFjVgIhAID9pb2tzTJRmTuFZKZBh5+Fuzw3VebyUE3cwtcMmYGZ"}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.18":{"name":"zenserver","version":"0.9.18","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","js-yaml":"*","mustache":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.18","dist":{"shasum":"1821a9a1361261fe62b0c90960028f2db16acd54","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.18.tgz","integrity":"sha512-CjE+HRAuQJEsTP3hfWCgNgXtV+MoTyk5ND1MU7j4WK5aRxFG1c+TXPVHxh+06AAj2shJEC5JkiEIDVnrQMkpNQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB6kPdD9j1eNEtSn81wgkx+kIiQR2WvWxr1upfwthicnAiABL/l89w2NWZ7JNErvXd3gl3UhGsBMWAkJbB72kclMww=="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.19":{"name":"zenserver","version":"0.9.19","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","js-yaml":"*","mustache":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.19","dist":{"shasum":"4e5f0f3aa03df10d3223bf21416ddf3bf0b28828","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.19.tgz","integrity":"sha512-zbWETOBWBP/i41eduR47Qq336nPYnZbV6+oiTTCoFp61ZsasQfH1mPMdqZPVuFHg0mNyWPwpt3050DcQh19+4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD48qPBO5N6e3wi1XN5ohpi44PeF8mwkNSFFL88qDg9WAIhAMCz7UZTMpICklUy0ItDTqRffkRdWm1pXHWj3k7SsZ4v"}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.21":{"name":"zenserver","version":"0.9.21","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.21","dist":{"shasum":"55f685471756134706417cb5e5e9d2cd3e471597","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.21.tgz","integrity":"sha512-nPofdz/86e1UfhT2flbXheCdnfIP08E2O8tW8rKOFBKStfDrDB8kHY3kceqAy4OkIYheOjhbsqHlI9KDslmksQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvsSE4q+mP3fAXnUfLzvEsKibOX6K/TZyak5I1NAQSfwIgTCyAkXXFNMsnH2Iw3zilBAFdRHlQko6VW1tiM+kq+cA="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.21-b":{"name":"zenserver","version":"0.9.21-b","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.21-b","dist":{"shasum":"e046392f6a45a024e434f652b48b4e85b0430d7b","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.21-b.tgz","integrity":"sha512-XRa/MrQJQbQoi5DX4aRByPP29hvhMfgROp6ArpKJruik20jPb+LPsLO7N8/zpisSUZmzcbqMtckD0nenQhKBTg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKtDcL6vx6MZDv1HApBPnITIO2nutMuwIhHkwlQQ5qCAIgay79ClXRmLnpqE0yPxFovo305wdwVtSGWqFxqd0Dw9c="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.22":{"name":"zenserver","version":"0.9.22","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["util","server","balancer","proxy"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.22","dist":{"shasum":"d3244b96f5cd0545189f5782a9ebfe85e6db4c00","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.22.tgz","integrity":"sha512-CPrDQ+8vL9nEsB61K6HSVDqeeuFxADa/hMZR6lzHYNyCImY8YOFL+8hrHGTimZ+3Z0/XIPj17Zh6GlRNUBL+aA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmaK+lWTPaxKh54pRbuaA6CfrpqAtz0KX0crJo1HaXoAIhAKXUcjuF/Ya1sDNMQNT0t9hmWXbJj+H48H2n3u+mqsTv"}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.23":{"name":"zenserver","version":"0.9.23","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.23","dist":{"shasum":"ac6cc2271548ab20af3182923916faddf80e75d9","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.23.tgz","integrity":"sha512-7uq/0FWkdFJwCtPBaU/xjVQHhEG+OqdsaVvCMfTzK2igM8kRpXiF40vS1PKu2d3aKjkULMDYSnuxEN2ifxqJQA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAwtU0epjLOF3c1UK0Azei3Yke7A2PmUhBmxjEA7jFCyAiEAn0yht5Nnbe3oUCYNNKhGEUZb/onHZ31xr+KFG8I7vY8="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.24":{"name":"zenserver","version":"0.9.24","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.24","_from":".","dist":{"shasum":"66ca4c4484da5d671ecee06abbedc4cb9367a48f","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.24.tgz","integrity":"sha512-aNaAaF8uQmCP5S6l1MEioGNtg9B7WkZxrqN9U5zBFQGsTz6XW3U8u6y0HiAtNkqX7YwEK8YBKzeUb3I6GfKfuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfdZSfjObothpC3EFZk/PjIt/1z2KUUQ5yhIxCW+7oBQIhALVHalLfV/78aSeSZH6ufsHByeED0rQ6dMCthIWMekwo"}]},"_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.25":{"name":"zenserver","version":"0.9.25","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*","request":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.25","dist":{"shasum":"91d662fc77277a358e759b694fc01bee36cc7c51","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.25.tgz","integrity":"sha512-1HzYu+/QV6wiymUDpqREnIXlW7QKm5Pq3Cb+Lb/g+icRSykj4YJfqBPxFd38+5+AnErNqe5cJMhoPuLiySrc1A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFrUMR0EgxR2Avq1rA0D61BeMHiqd0lyhBzPjM8WfsQ0AiEAg53wgA7HXlMKKWp1/1k6HZKDVncxuoxaLXupIvCo9u0="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.26":{"name":"zenserver","version":"0.9.26","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.26","dist":{"shasum":"b33dc320c7b14a3cfaa169c3b563cbc2c925be4f","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.26.tgz","integrity":"sha512-Hj/JVOn81T/1CwwnV2DhQnidZPzVS501zp/a8dAGAN+4XullfrlR185YsmVmPakqSr+/VT0tC64MS+nHl5kXgw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDW64FPG1sFmkt6uup68Jvi9qQoks42WGD/tFQKSJcE7AiBIlTF9W8e1hTv7mc/NJYsLN6uG9W5yhcRU+IToQLW1yg=="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.30":{"name":"zenserver","version":"0.9.30","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.30","dist":{"shasum":"9155e440a0a4c8cc37bf325c5e049c5ece3b0873","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.30.tgz","integrity":"sha512-2osD6nJaEl0VPfjV6PKfA8dXreMXCZZKVnj6/pWffghXae/r4uuerjZ7Y2oGCesNABTBZkVfZP9WmAiLPntTKQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHed2ai2vNd1IXaeCzzerEL+SlNogRQWgWXAvrPOgZNuAiAVl2wZsYwJVJgP22v5XfBxhlQjskpVEcuFWfP+S0+5zw=="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.9.30-b":{"name":"zenserver","version":"0.9.30-b","description":"a lean and mean http router for node.js","homepage":"http://twitter.com/soyjavi","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.9.30-b","dist":{"shasum":"0a5805c952b063f2520e7ee7c3eba6e305459881","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.9.30-b.tgz","integrity":"sha512-IPFNBmgMDVW2JOu4Vf5hrH0wdh1d59r0X5JgLMpD0GrIvBuIGMLSJp/gcW0FGsAO2jUv9O92iBd5X3Hr/hhvTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZDWbd1aBwGqTYtQwUuq5cmjarO4c7sWluDTZaCl59TgIgD6WcjXiUC+sPekqFdp6ztrQNGElBuDc/U4q5CN7/+Gs="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.10.1":{"name":"zenserver","version":"0.10.1","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.10.1","dist":{"shasum":"24df635755573dc305d91d8f6a80b6a6867c6be2","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.10.1.tgz","integrity":"sha512-dLUCjj5cnwCA8Y4Q3OyBaP9ZA5P7N8zoYRfgkIj04L0VYLLRKOycQZ8rKkuPgWR1itsi9GwsaEFs5RDoJQQKEw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuaAQeouKt8yGK6VUFN/6zPPCZZNH//LjFj98XTkCZsQIgIU4NWApWhe23zsjF2VJ31HtCyCpE8MCqQoIu7kFToxE="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.10.3":{"name":"zenserver","version":"0.10.3","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.10.3","_from":".","dist":{"shasum":"0ee809a0d7d6899773655b6a8ed0328bd6bbfec2","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.10.3.tgz","integrity":"sha512-+7Np75m934vD9ok2A2Ebqlg5cov/FTqQHlu5luM1H1x91ersacFtW0KPOBL/UrIA+p4CR+ePdfSPCdPbCdesRQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpX8vshdvOsf+e1J6LPvqHWnUWuylP8w2JIQOPzGGXrQIhAPqrazVtIq0XfL7zW5NhLUtXHdWF0LTahG9BBqeKr6IA"}]},"_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.10.6":{"name":"zenserver","version":"0.10.6","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.10.6","_from":".","dist":{"shasum":"4c1a4608795300ef52a6b1a5ded3551628a662bb","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.10.6.tgz","integrity":"sha512-IwUwfbgXktiPbwUKFgdvAM6pcGwVhlYtmzch8SxbJUGgyH/1naS7nxidHUiEB64Xhe0XNUBw4THdyptytiVaUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6uZOvCrgxwYBsROZgyGNlgtK0joX6Z1y6hjweyG+5NQIhAJ9k9IIFOp/cztQqxB4pAO/VKpNQ8BS54VCmoEqOxtwQ"}]},"_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.10.7":{"name":"zenserver","version":"0.10.7","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"_id":"zenserver@0.10.7","dist":{"shasum":"c8e0ba6e9607a2d39df9aae9a43f3d1fee54542f","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.10.7.tgz","integrity":"sha512-jBImxdB+xAQ+0M5Qf3t40PmIjC6Z0nq6dLPPEJUgtgVZUXz5F065YDl9y4VUmvwyiTEpzr35Eipux6HfFDRebw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEu7WiazCC/gQhcsGAaO5lCSXm4QnLk/XTTjmHET6q2yAiBUUNgOuv7ykWne6tHTfXSPIfgbR8JdhQLS/RjSDpj4pg=="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}]},"0.10.29":{"name":"zenserver","version":"0.10.29","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"152696f8873328bc2227ee71a53f56448b19b5fa","_id":"zenserver@0.10.29","scripts":{},"_shasum":"28ee6a4f048579d5c0d8dceacb0098fd1e8720a0","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"28ee6a4f048579d5c0d8dceacb0098fd1e8720a0","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.10.29.tgz","integrity":"sha512-cdL+j7fCdFVr9GpltgwsNmV7fwde56OmLXqPFf0R4BaIcofrGnHCQLnR9OTHec5tqdzC7eiwXN64VcvfGz9zTA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4DbCYSQluDyutfvOxAaJr3cCEVeJIrwaIEw+ywTE/ywIgMX7P73LGc1cV1NB1pKLl8qAT46rO1p53ZMQ7jmU8CCs="}]}},"0.11.2":{"name":"zenserver","version":"0.11.2","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"e3aa470f6cc0f9622509edc5f97a720c85d7377e","_id":"zenserver@0.11.2","scripts":{},"_shasum":"1da3e1d7003289840eec3285af09d148eba7d659","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"1da3e1d7003289840eec3285af09d148eba7d659","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.2.tgz","integrity":"sha512-aHLJ4UzDO/2cSSrrxgAyqeaCese98xwaC+S9gLRCZfhqXU+lsRXDKkqWU9Cu8lTJOZmel37hbirkTEItlzHgSg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDXMKoiNOoxfhokfXVcGnL0Ce53E+zpe4SOPDooJnh9yAiAi+VgnzXm0cyNfsVnoVrwBtGkXcYEQk8kyeTi1z9cprg=="}]}},"0.11.3":{"name":"zenserver","version":"0.11.3","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"c8c160bc324d7aada8358cb8ed8300602a1391dd","_id":"zenserver@0.11.3","scripts":{},"_shasum":"0601afc9c8eaf8c4aff766a1dfb7a614fe71be07","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"0601afc9c8eaf8c4aff766a1dfb7a614fe71be07","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.3.tgz","integrity":"sha512-eJ90FK/6V2Y81kTfah89rEYARddCKuojeM8soPfXVzbf/JhhaO9Js3zflDA6c1Ntxg1RPjbrWTaVcJNP2rAiog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBqkOdBAhyLLQposJ2E4bniipJ0tnKdFd7CfxFyUV7ryAiEA8U9mud4yjSuN/rnqZo6Ph2HHv2SS8+Tv1+t2MHUvIcI="}]}},"0.11.5":{"name":"zenserver","version":"0.11.5","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"7456ff6ab73596ac662b7d8ca552ee5bd79b2637","_id":"zenserver@0.11.5","scripts":{},"_shasum":"0028aac1a01ae457fad441722f35637c1ee5ed2f","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"0028aac1a01ae457fad441722f35637c1ee5ed2f","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.5.tgz","integrity":"sha512-vIa/vmkkbfVNIShcRjQLeKTyJwL9P1mg6LA2OeBZjydtlgMNUkABuHphUi3IV09xK4q0JK7m+jQObMOV+XQW0A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF6Q14T3EZOr0v44kUGk6BT3oYMUhfrBPT7+QS44iR2GAiEAqRdxrtVnU9s2AROuuO7RpkNd7JehndFh4pHWAPe91HA="}]}},"0.11.5-b":{"name":"zenserver","version":"0.11.5-b","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"8ac7a42d058c420b6d6a1a43ec6801019c3f8547","_id":"zenserver@0.11.5-b","scripts":{},"_shasum":"46576e76de921d502f12d564303d3f9ebc353f47","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"46576e76de921d502f12d564303d3f9ebc353f47","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.5-b.tgz","integrity":"sha512-eI53C6eKDbnE2/66p6mpu+5D0r5vj0WHaEUtwjztoULIm/5EaW0y4YwImXnZP0QAK4n9oU7EmDL8XPAky4mIiA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0mii1SPD62YUEuGsYHVGddcGbPJlcXIqivVJkT/uSuAiB8F8coR5n5gJmXwP7mainsq4fnHKKtgJwYUngllyUhXA=="}]}},"0.11.6":{"name":"zenserver","version":"0.11.6","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"7cb19e0899ad48431d6328934d2d3a8ab48bb289","_id":"zenserver@0.11.6","scripts":{},"_shasum":"74aba348a4e3851e79dc7818021991aa1d8c4068","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"74aba348a4e3851e79dc7818021991aa1d8c4068","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.6.tgz","integrity":"sha512-Pek4o2pdWSuhLOpKdvZ+KZY1667yU89I4/P+Jd/ux+i2LO7AAxB56DwhLe7zFS2AIoMPiMpLEEVCE6E2Tn1LAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDab8dbe5f660Y2rIoATMgEFcIYU2hvc23k2H0cq2JW3AiB0G92UaxZJYqFKyUvn2lJAXTscn0DObrtyakPIdp/UFA=="}]}},"0.11.12":{"name":"zenserver","version":"0.11.12","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"53bfa76ccb8cad46ab975e2af3fb93dc6fa1b079","_id":"zenserver@0.11.12","scripts":{},"_shasum":"94709faed413646894e9fe80b613ec30e0b1a76e","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"94709faed413646894e9fe80b613ec30e0b1a76e","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.12.tgz","integrity":"sha512-PlBxm72gjynFxdvVW3yI7yaNaG7FatxlEFa55LI9Lfdzcg/V4v6MF0ZQEQS6Joxcu2W6L0f6w5fWrc3WsW8mag==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqLKxvx2Hz/sSrBVNOKxjCPCBXpdxajCRH/JMeTY/BHwIhAMO29bOXtaorOxtqTFwASTZZUWQGSGcckUYJVUdHP337"}]}},"0.11.14":{"name":"zenserver","version":"0.11.14","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"5d43d07ed80816fb4cd3ed6b5275834c87576c40","_id":"zenserver@0.11.14","scripts":{},"_shasum":"c0648d409aafc8ac12005069afb580f6da073f16","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"c0648d409aafc8ac12005069afb580f6da073f16","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.14.tgz","integrity":"sha512-zf8i3PYoX8TO0Bi8DDmticRuUDBTkWqvBaiF+rUtx0YD5AOFQg1tO814dEM5w2e/JMewoMMc4QhybYWjvQuVaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCc8fTVhV49QlejQp2NtDiuk9ZwoKv7bPcUCnNTqXuwhwIhALH0EiAbER02ANxfWNSxhaKTa3MePf/S8xv1rQWnjwpr"}]}},"0.11.23":{"name":"zenserver","version":"0.11.23","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"0ae6eff536dcbb0bf5c719d779ef6574c2f22c08","_id":"zenserver@0.11.23","scripts":{},"_shasum":"04a5e4edb5f68f9731d74f51c1436c17f5ccf524","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"04a5e4edb5f68f9731d74f51c1436c17f5ccf524","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.11.23.tgz","integrity":"sha512-6purq3tP49kl1OjjWSEwKesXPhDwxi68RVGcpUPkeLpfTRoZAZzLDg2wodWt4YHaHd+yriUJ8CZf9ixEugeuXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCI30axva2TB7ISQE1tKMp/xy3Bp9aBX4OQci3uLlWYgwIgOl5/vA8aY+oIM0DZ3DrDQCDH/kkLFm2aSCDfk/itYzI="}]}},"0.12.2":{"name":"zenserver","version":"0.12.2","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"755814fba554acbb4fc39df7c1737935ea758a4f","_id":"zenserver@0.12.2","scripts":{},"_shasum":"41742234dbb03ef2d7d4bba4c5b6e2ab3a7b0bf2","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"41742234dbb03ef2d7d4bba4c5b6e2ab3a7b0bf2","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.12.2.tgz","integrity":"sha512-U1jXE11t0zcMdXEvwc6WyMKFEtjbQcXI8iTbnm9MNBCMrU4QQXUyW1RL7xnL9Sjs8A2TBGkKiZj3CVDk3mtlMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHRmXl3o12e8S8C9MJx4QKXZYBQvaLgvheDeVRBEOsRSAiBeI7YXf91nmbnDS/EJcRgdpcD/2wUKaEcTvDcax5VvrQ=="}]}},"0.12.6":{"name":"zenserver","version":"0.12.6","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./index.js","engines":{"node":"*"},"gitHead":"2553894f16475d020ecf150bd121821d78e5043d","_id":"zenserver@0.12.6","scripts":{},"_shasum":"b7d017477ea4f6e64665e0bc289394665f62e756","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"b7d017477ea4f6e64665e0bc289394665f62e756","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.12.6.tgz","integrity":"sha512-VtHxH4w6tMBM7QfFbaATc3F68PROFazvh+GJhqfWzdhr5Kpgbo8jWJ3eW8RRJz8hCE3raeKPD8m5TRoZQwoGrA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGaYRmDLR/st3deiQodRV9EYwRHfd2kN9Te8TWRaTeGpAiBWo5L4X00JTUa4cWB2dQansrILCj7ePxJMqSEPZLWPGQ=="}]}},"0.12.9":{"name":"zenserver","version":"0.12.9","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"2d0b7f29ba107a0bb040ab997bf7bb55a8a3b6e7","_id":"zenserver@0.12.9","scripts":{},"_shasum":"e293bd8d28672d4cb9f863b1af20ff9681a9c87e","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"e293bd8d28672d4cb9f863b1af20ff9681a9c87e","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.12.9.tgz","integrity":"sha512-vW5Hs9MTDck3DTSeOGk0dtKwVhRVezUseSqJ+Q7n1imS/+uXSZRXMc4dRjRTc4i9J7wVlojv0AsnX+5nZYrCdg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB5/Iobg33dzH6KlIcvyLAesu8ignmFS4vO+dXZY/GOnAiBnmMAhYIZ4O+aP82HKO03PgnsqXrmP32KGDK4Jb456kw=="}]}},"0.12.11":{"name":"zenserver","version":"0.12.11","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"c4176d25cb3e3834a72431fee9620e6c119ab5ee","_id":"zenserver@0.12.11","scripts":{},"_shasum":"7b943c05abcb1d8857a61f490afd4ea3c95a59a8","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"7b943c05abcb1d8857a61f490afd4ea3c95a59a8","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-0.12.11.tgz","integrity":"sha512-bfc2+ZMDhl7GVvjY1HM99RWF7V6GgNqaqJPKdhC39C7kMEBi7oMxkdMKuGepA75i3JEATrKh7Vv8LlQMjLiXNQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwxt9YsjuTPFXDYKD+UEpAAPbXq37+U5r3ZWb9S/cX5gIhANgNJgQGmv4ZPlby5qcUppNLG4SHx4ormQNrf2KO1K0w"}]}},"1.1.5":{"name":"zenserver","version":"1.1.5","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"39ca8a1a7d2a537fcc48a9e25817b8dab7a31e9f","_id":"zenserver@1.1.5","scripts":{},"_shasum":"992158b716c2235fade5f720eac988aab3f65c58","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"992158b716c2235fade5f720eac988aab3f65c58","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.1.5.tgz","integrity":"sha512-D/CiQcGINkz8HAXsoq5UdFqoy/n8cQVZ1MFycgifKUCDyefeLnv+HSu5DwOhvVbAe0LhYonSj3QlCkTQoppOxA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGo2f5S0rNi+i2pzK2wjFkU43VOePXtu9dNVogLIYvMSAiANR0DXvg9ykEPA4PpYj6qVq3eRq00O+xrhsFHTHHeyhw=="}]}},"1.1.8":{"name":"zenserver","version":"1.1.8","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"dd0c31aa1900a512ec4b863f4acdca2a5bb25c8f","_id":"zenserver@1.1.8","scripts":{},"_shasum":"024b714caeaf9c9a866179734d427c32cdbc10ae","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"024b714caeaf9c9a866179734d427c32cdbc10ae","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.1.8.tgz","integrity":"sha512-1c69b+NqMwYSfDk84UbOqE4OKmrueEFFSXSimDPLixmIcwFQdWuIXLdz1/I3adCNtjn2XHt1c+DZikDhYThxZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfKKqxmFMOrn5pqPCNWhXxaXHFOznd8etHZUKp9N0LPAiAgTSiresgMzJfEkhvreyWta7QOqr4oxIx77QYIVYXSzw=="}]}},"1.1.10":{"name":"zenserver","version":"1.1.10","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"b427df89f37fe71d41f162cfb6330a08009315e0","_id":"zenserver@1.1.10","scripts":{},"_shasum":"a51a3ddc434bb2dd1bab6bae5ac0b0d5b3c14009","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"}],"dist":{"shasum":"a51a3ddc434bb2dd1bab6bae5ac0b0d5b3c14009","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.1.10.tgz","integrity":"sha512-3aKZUAKO39Khe+HcdbwUfdIa3C0ey35qSYOTp07XTRc+QafrKc2gGOrFlXH+UKtfgORrrK5f7KZa0ZxA9JHLqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID8Ld1UTKQ1LCyY2ukt2rDLVxwTrc1Ioeh1EDJuXR0niAiEA+9SObWDGt88gTGfco8Se3B81E0tlLISmGnlGm0noV3k="}]}},"1.1.25":{"name":"zenserver","version":"1.1.25","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"0ecdfeae42566f42765751083e796ed183c3cef1","_id":"zenserver@1.1.25","scripts":{},"_shasum":"0eb9a03b61335930ee9bc7b41ebe3a8c6acfcf15","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"0eb9a03b61335930ee9bc7b41ebe3a8c6acfcf15","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.1.25.tgz","integrity":"sha512-mFhq7x77isE9E3Rnvmvln92OUzs6foU2JUtPj6Ru+6sWdjkRkcCBtmyHCdmiKSK/0BOguRSoaqMQ7/5BbDqR6Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAgNRGc4Pxn4fE4cPJXpaQCjEPzswIcDkQzBdPPg2yeDAiBG0olzeKFS9kPOBHa6HdY8CsgPWlmEvrxJlhHVDcLYFg=="}]}},"1.1.26":{"name":"zenserver","version":"1.1.26","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"David Rey","email":"david.rey.acosta@gmail.com"},{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"d4cbe0a87a867047e8c62ef41234c5326c68e65f","_id":"zenserver@1.1.26","scripts":{},"_shasum":"926558fa056e56626a53826229a53f905153ecd4","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"926558fa056e56626a53826229a53f905153ecd4","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.1.26.tgz","integrity":"sha512-qzIq6rjTse3HfdSNklFq57CJ+Ttkm+FH+W/1SKMJ5/jHw9GIQ5GLowQr/Ni5PO/OI2HtQMPqpX4jZeHfNf0nhQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHw5yaSxR9ZM0Y/wi4ZYezC16GnEzTaeqRhvZgm60XvWAiEAoIev86XYCHkEgkUgMl1n8xullIuS0S4ivVD/MWPO8EY="}]}},"1.2.17":{"name":"zenserver","version":"1.2.17","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"3598a28113a7a789f739866cf982e3851c40073f","_id":"zenserver@1.2.17","scripts":{},"_shasum":"ca80fbd524f8570b83f601be5e7e3117eeb525dd","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"ca80fbd524f8570b83f601be5e7e3117eeb525dd","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.2.17.tgz","integrity":"sha512-4MZh/9YfnED9CIy6n+6pCAhGuDl9S0sc39w7EwqELiZZBKZsa76CImZOjzp0tLfP+IdCI4wk8r16QkL9/aT/Eg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH7uaopwwDWVY2l95BGZNu5MMTKPdNjnqPNEdGUTk39JAiBxGFVAnYoPefFTJg7UUeyurpLL9+PEWJ+B1tG2RldXTg=="}]}},"1.2.18":{"name":"zenserver","version":"1.2.18","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"24d1f42f7956b7eb7a36d8e63dac89589ac5351c","_id":"zenserver@1.2.18","scripts":{},"_shasum":"9c8e944cfccc3536ba82de589759531ede449ab8","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"9c8e944cfccc3536ba82de589759531ede449ab8","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.2.18.tgz","integrity":"sha512-xpwjqu4cYVOyCPLs8xMMpPRjPKpF8bp3rsqgoY0ZM2WgKoC1lFIfpwlrNnI0OgnIZVnJ1SvpjMmVG83L039LLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICU3Tp1BFX/WONpdFvXh7c7iN0umzSqP/RAbyb8wY4BHAiEA1vDAwEJJrx5DCefcPjXqBBLw07cGU7oot6gOG6pE6V0="}]}},"1.2.24":{"name":"zenserver","version":"1.2.24","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"b19737eb8fb31835e4d8b3acf78cfb3eafd5c01b","_id":"zenserver@1.2.24","scripts":{},"_shasum":"28f784aa158d0dd16f2493d6e32cc88559f58d2c","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"28f784aa158d0dd16f2493d6e32cc88559f58d2c","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.2.24.tgz","integrity":"sha512-JLqPe+vb04G6SkDSu4cPmN28ug/+eSP8JUjk7xvDBufrXX+4uMoAj7hpg+VjRnlpE/BIk0tO6aB1GY7YbhIg/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICF/9C+G5P0MiyaE0DkLLy6twanDyC/q8bgSnVB2gwsMAiEAmOeZc0zR4AKlv7S5rNI/VMtNfeuSE19ayMb39Lk5JeE="}]}},"1.2.26":{"name":"zenserver","version":"1.2.26","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"0b179a813182e6d21456d9cccb6c079144e2e44b","_id":"zenserver@1.2.26","scripts":{},"_shasum":"76e0adf94877e44deb405eb9b30567b622a7c7f0","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.12.0","_npmUser":{"name":"cat2608","email":"cat2608@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"76e0adf94877e44deb405eb9b30567b622a7c7f0","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.2.26.tgz","integrity":"sha512-p88QxBN9WxICZmeZUPtBLEdSUiZhAvGFx3lm01/Yt1T0YVEvW5FJNieZCw17iWMLtxyJr6a7VLUVaawxlq78pQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCB9hgwXxz0KKe2K9wUHBJkQH3TfnjySNQLimZRfd3DuwIhAL7D32PwE6XX71sN3vUlI9pNWB38r8JSQknDZnNZFHUj"}]}},"1.3.4":{"name":"zenserver","version":"1.3.4","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"9609f94a87e1ec5cf7d565059e140be69ee1735c","_id":"zenserver@1.3.4","scripts":{},"_shasum":"a55ab18c833ac93f90cceeff5a8ee1d0c4fd7255","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"a55ab18c833ac93f90cceeff5a8ee1d0c4fd7255","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.3.4.tgz","integrity":"sha512-pes6JS+F5TVMWSnTQNIY8HIlr9N4o+8jGBQWxgpFIbKQsFr9CAtwVoiWRLO1K1NAGq6HmGHmRNsaNyEZluLKHw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQ1pwquvXO3c7ff7qSydf4avW4TW2Xay2ddH6WiaujuAIhAKgiVvycvIIbaefo5GYcjlXKfusLOytWWvPcGm58PqEF"}]}},"1.3.6":{"name":"zenserver","version":"1.3.6","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"42422175b520b58cdbb6e8485b0291f88d2c3ba7","_id":"zenserver@1.3.6","scripts":{},"_shasum":"4b1412cb533af80fe914653d8824be1bfd29c08e","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"4b1412cb533af80fe914653d8824be1bfd29c08e","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.3.6.tgz","integrity":"sha512-vOFzBw1SE2ACTu6w3ZMhTMyKye410c3wSf2BjIaSYVDB/KduLaVAtZutb76IPsooy8e5nkqHTDM6RH8CmpR1gA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMa7EdmesLQUNvn0r6N8iOdDbLr1olcEx/icog5GLWOgIhAODd82QZ6FZXZ33FVbyDrJ4HWfa2mEIiLmL6dkSc7c+o"}]}},"1.3.10":{"name":"zenserver","version":"1.3.10","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"67376d8c3d12eef662f7b6ee7488ad9fa7c3ef88","_id":"zenserver@1.3.10","scripts":{},"_shasum":"fb8e39b83929bde37415b62fba2428c03307061c","_from":".","_npmVersion":"2.3.0","_nodeVersion":"1.0.4","_npmUser":{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"fb8e39b83929bde37415b62fba2428c03307061c","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.3.10.tgz","integrity":"sha512-QOX1RmI7qrJU61kMQx4+Lqix/Hfx04O2U3AOFrBRsQUMf0mG17mtUZsUw7pYM4vjPT6t34Fy+4SFVp9m6tkdjg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAGRw2KDNAHZp0Bh9s5NqvjVHe7/Lie++odYxBjcP7J9AiAyF5WWNomsMv7hXXL36luinDKeXro8xCwpJ/1yg340BA=="}]}},"1.4.14":{"name":"zenserver","version":"1.4.14","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"516d25f598ef8f05b34f828856506bcf545443e1","_id":"zenserver@1.4.14","scripts":{},"_shasum":"1fe1806e0419516504e864093d6b9c6a384efe3a","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.12.0","_npmUser":{"name":"cat2608","email":"cat2608@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"1fe1806e0419516504e864093d6b9c6a384efe3a","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.4.14.tgz","integrity":"sha512-FUOO+VAztqIleaqtw98rUuFlpWPGPweMlxZGyslJE6sKE1bxsbuibBLXR6/7UU5k5SuLLNU8A/CuTdToFzeHGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICbE2uZ+RIq2N2x8ZNPOrxohD8f1AFTDujhr32Vo6gGHAiBz1FxUw2YFe/r7Q2U+KCEM0xIFXUVsDMwSGVZPLqkT1Q=="}]}},"1.4.18":{"name":"zenserver","version":"1.4.18","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"ecbf678c05e87e565ddda6c021867cf5409735ed","_id":"zenserver@1.4.18","scripts":{},"_shasum":"995a00a03f89e2a707785185adba4bb1afbe629c","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.12.0","_npmUser":{"name":"cat2608","email":"cat2608@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"995a00a03f89e2a707785185adba4bb1afbe629c","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.4.18.tgz","integrity":"sha512-UnWxybgIy9Zn7y8ljXADnOAhw8q9/SXAaTU1QMRQlDQFSTD09KkiKPFQvOtnDsKoqaHAH3m13Z5R5ylLdL5ZoA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICcGZq4t58bdi0+lqIhT8MRxGVILsDoy2SS4nbkWe+I+AiEAhgc0ILtDKyRqqQ4uNyj2zK/ZI0ygWmK9lA5aflxQZnI="}]}},"1.7.9":{"name":"zenserver","version":"1.7.9","description":"a lean and mean http router for node.js","homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}],"dependencies":{"coffee-script":"*","colors":"*","formidable":"*","hope":"*","js-yaml":"*","mongoose":"*","mustache":"*","redis":"*"},"main":"./zen.proxy.js","engines":{"node":"*"},"gitHead":"ffa3e7dee6d0c6473104a33b377fb34946381f1c","_id":"zenserver@1.7.9","scripts":{},"_shasum":"09da4030e00a9e7a1ed8a1e02f8a9b43322771e9","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.12.0","_npmUser":{"name":"cat2608","email":"cat2608@gmail.com"},"maintainers":[{"name":"soyjavi","email":"javi.jimenez.villar@gmail.com"},{"name":"cat2608","email":"cat2608@gmail.com"}],"dist":{"shasum":"09da4030e00a9e7a1ed8a1e02f8a9b43322771e9","tarball":"https://registry.npmjs.org/zenserver/-/zenserver-1.7.9.tgz","integrity":"sha512-T5r28LReXUxaFOh1TehaI93XRtG4r22Akc3w3xKJGJzBPZ6EC73icMo5SyWEY+mE8nSmnXaYKS6GALioL3vCLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8z1XorM6iNTSxJfMBYnraylzRXDBnZXZmb1gAAXrzpwIhAJaD0fwzna1ljelG0nIFOwune2yatslyWDLf1J98TO2t"}]}}},"readme":"# ZEN-server\n\nIs the main module of ZEN, that there you will find all necessary tools to create web servers with NodeJS. The main difference from others solutions is the not dependency of third modules, very common in NodeJS projects but that ultimately can create problems.\n\nOur engagement is use the fewer dependencies and offer our experiences with NodeJS easily and intuitive.\n\n- [Introduction](#a.1)\n  - [Installation](#a.1.1)\n  - [Configuration](#a.1.2)\n  - [HTTPS servers](#a.1.3)\n  - [Commands](#a.1.4)\n- [API server](#a.2)\n  - [Our first API endpoint](#a.2.1)\n  - [URLs](#a.2.2)\n  - [Parameters](#a.2.3)\n  - [Session control](#a.2.4)\n  - [HTTP Status Messages](#a.2.5)\n- [Renderng](#a.3)\n  - [Our firts WWW endpoint](#a.3.1)\n  - [Mustache templates](#a.3.2)\n  - [Bindings](#a.3.3)\n  - [Blocks](#a.3.4)\n  - [Redirections](#a.3.5)\n  - [Render files and streaming](#a.3.6)\n\n\n<a name=\"a.1\"/>\n## 1. Introduction\n\nZENserver wants to offer all you need to build applications robust and easy to maintain. Also provides connectors databases with MongoDB and Redis and a connector with [APPNIMA](https://github.com/tapquo/appnima.docs).\n\nSo, the basic structure of files and folders to work with those features are:\n\n```\n.\n├── api\n├── common\n│   └── models\n├── environment\n├── www\n│   └── index.html\n├── package.json\n├── zen.js\n├── zen.yml\n```\n\n<a name=\"a.1.1\"/>\n### 1.1 Installation\n\nTo install a new instance of ZENserver only you have to run this command:\n\n```bash\n  npm install zenserver --save\n```\n\nAnother option is modify the package.json including this new dependency:\n\n```yaml\n{\n\n  \"name\"            : \"zen-server-instance\",\n  \"version\"         : \"1.0.0\",\n  \"dependencies\": {\n    \"coffee-script\" : \"*\",\n    \"zenserver\"     : \"*\" },\n  \"scripts\"         : {\"start\": \"node zen.js\"},\n  \"engines\"         : {\"node\": \"*\"}\n}\n\n```\nWe include **coffee-script** package too, because we go to do all examples in this language. But if you want to develop in JavaScript, you can.\n\nWe believe that CoffeeScript is more maintainable and legible, so if you want to learn more of CoffeeScript you can download this free book <https://leanpub.com/coffeescript>.\n\n<a name=\"a.1.2\"/>\n### 1.2 Configuration\n\nIt is easy to configure ZEN because everything you need is in the configuration file **zen.yml**. We are goint to analyze these options:\n\n```yaml\n# -- General Info --------------------------------------------------------------\n  protocol: http # or https\n  host    : localhost\n  port    : 8888\n  timezone: Europe/Amsterdam\n```\n\nIn this section you can set your server configuration, the protocol that you use (http or https), host name, port and timezone.\n\n```yaml\n# -- Environment ---------------------------------------------------------------\n  environment: development\n```\n\nWith this attribute you can create different configuration files to use in different environments (development, preproduction, production...).\n\nIn this example we have established environment so when the server is started searches a file in **environment/development.yml** route to overwrite the previous configuration on **/zen.yml**.\n\n```yaml\n# -- RESTful services ----------------------------------------------------------\napi:\n  - index\n\n# -- HTML pages ----------------------------------------------------------------\nwww:\n  - index\n```\n\nThe attributes **api** and **www** contain the endpoints of your server.\nThe *api* is for REST services and the *www* for others results (HTML, images...).\n\nIn this example, ZENserver searches the endpoints **/api/index.coffee** and **/www/index.coffee** and will load on the router for further proccesing.\n\n```yaml\n# -- Static resources ----------------------------------------------------------\nstatics:\n  - url     : /temp/resources\n    folder  : /static\n    maxage  : 60 #secods\n  - url     : /img\n    folder  : /static/img\n  - file    : humans.txt\n    folder  : /static\n    maxage  : 3600\n  - file    : robots.txt\n    folder  : /static\n```\n\nThis attribute gives us a simple way to provide static files on our server. We can offer complete directories with the **url** attribute or a specific file by **file** attribute. In both cases we set the path relative to the project directory using the **folder** attribute. In case we need to have cache resources we have to set the number of seconds using the attribute **maxage**.\n\n```yaml\n# -- session -------------------------------------------------------------------\nsession:\n  # Cookie Request\n  cookie: zencookie\n  domain: \"\"\n  path  : \"/\"\n  expire: 3600 #seconds\n  # HTTP Header\n  authorization: zenauth\n```\n\nWith this attribute we can establish and get easily the session variable for a particular customer. This variable we can get with the attribute **cookie**.\n\n```yaml\n# -- Monitor -------------------------------------------------------------------\nmonitor:\n  password: mypassword\n  process : 10000\n  request : 1000\n```\n\nWith this attribute we can create an audit to control what happens in our server when it is running. This audit creates a file per day in **/logs** directory with this information:\n\n-   Endpoint requested.\n-   Which methods: GET, POST, PUT, DELETE,...\n-   Processing time in milliseconds.\n-   HTTP code response.\n-   Response length.\n-   Client (coming soon).\n\n\n![image](https://raw.githubusercontent.com/cat2608/contacts/master/assets/img/screen-18.png)\n\n[Learn how to use ZENmonitor](https://github.com/soyjavi/zen-monitor).\n\n```yaml\n# -- firewall ------------------------------------------------------------------\nfirewall:\n  ip: 100 #Number of request per firewall rule\n  extensions:\n    - php\n    - sql\n```\nYou can control packets transiting using `firewall` option. You just need to set extensions that your application is not configured to handle and ZENserver will return `403 Forbidden`. Also, with `ip` parameter you can set a number of maximum requests that a host can do before get into list **blacklist.json**.\n\n```yaml\n# -- CORS Properties -----------------------------------------------------------\nheaders:\n  Access-Control-Allow-Origin: \"*\"\n  Access-Control-Allow-Credentials: true\n  Access-Control-Allow-Methods: GET,PUT,POST,DELETE,OPTIONS\n  Access-Control-Max-Age: 1\n  Access-Control-Allow-Headers:\n    - Accept\n    - Accept-Version\n    - Content-Length\n    - Content-MD5\n    - Content-Type\n    - Date\n    - Api-Version\n    - Response-Time\n    - Authorization\n  Access-Control-Expose-Headers:\n    - api-version\n    - content-length\n    - content-md5\n    - content-type\n    - date\n    - request-id\n    - response-time\n```\n\nFinally we set the type of response from our endpoints, to limit access to the same with typical parameters for cross-origin control filtering methods, etc ...\n\n### 1.3 HTTPS servers\nYou can create a HTTPS server with ZENserver just setting the protocol attribute and certificates files names:\n\n```yaml\n# -- General Info --------------------------------------------------------------\nprotocol : https\nhost     : localhost\nport     : 8888\ntimezone : Europe/Amsterdam\n\n# -- Certificates --------------------------------------------------------------\ncert: server.crt\nkey : server.key\n```\nThis files must be at **certificates* folder at the root of the project. Then you can start your app like always but type in browser: `https://127.0.0.1:8888`.\n\n<a name=\"a.1.4\"/>\n### 1.4 Commands\nTo initialize server the command is:\n\n```bash\n  $node zen.js zen\n```\n The content of **zen.js** must be:\n\n```javascript\n\nrequire('zenserver').start();\n\n```\n\nThe server runs in the port that you established in **zen.yml** file. You can overwrite values of zen.yml with command line:\n\n```bash\n  $node [JS file] [YML file] [ENVIRONMENT] [PORT]\n  $node zen zen production 1980\n\n```\n\nIn this example we established that run *zen.js* file with these attributes:\n\n  - **config**: Is the configuration file, replacing *zen.yml* that it is the default file (must be passed without extension *yml*).\n  - **production**: The name of the file of environment for replace the existing environment attribute in the configuration file zen.yml.\n  - **1980**: The new port, replacing the declared in zen.yml\n\nNote that it is not mandatory to set all parameters but respect the order thereof. With this, in case you want to assign a new port number, you must pass the following arguments.\n\n<a name=\"a.2\"/>\n## 2. API server\n\nAs you saw, to work with APIs, we need to store the files into */api* folder.\n\n<a name=\"a.2.1\"/>\n### 2.1 Our first API endpoint\nWe go to create a new file called *hello.coffee* in **/api** folder with this code:\n\n```coffee\n  \"use strict\"\n  module.exports = (zen) ->\n      zen.get \"/hello\", (request, response) ->\n        response.json hello: \"world\"\n```\n\nIn this case the exported file *hello.coffee* GET a single endpoint type and whose has path /hello, the callback that runs whenever you access it gives us two parameters:\n\n\n  - **request**: It is the native object NodeJS but powered with zenserver. In later sections we will see the extras options that zenserver offers on this item.\n  - **response**: Like the above is the native object, but as we can see with the (nonexistent in NodeJS) json function comes with extra features.\n\nIn this endpoint we are only returning a json object `\"hello\": \"world\"` thanks to **.json()** method of zenserver.\n\nIf we want to capture other methods http we could do it in the same file hello.coffee:\n\n```coffee\n\"use strict\"\n\nmodule.exports = (zen) ->\n\n  zen.get \"/hello\", (request, response) ->\n    response.json hello: \"world\"\n\n  zen.post \"/hello\", (request, response) ->\n    response.json method: \"POST\"\n\n  zen.put \"/api\", (request, response) ->\n    response.json method: \"PUT\"\n\n  zen.delete \"/api\", (request, response) ->\n    response.json method: \"DELETE\"\n\n  zen.head \"/api\", (request, response) ->\n    response.json method: \"HEAD\"\n\n  zen.options \"/api\", (request, response) ->\n    response.json method: \"OPTIONS\"\n```\n\n<a name=\"a.2.2\"/>\n### 2.2 URLs\nIf we need have conditional URLs and that it is managed by the same endpoint, we might to use the conditional router of ZENserver.\n\nFor example, we need an endpoint to get when access to an user and a determinated area like this: */user/soyjavi/messages* or */user/cataflu/followers*, for this we use the conditional URL **/user/:id/:context**\n\n<a name=\"a.2.3\"/>\n### 2.3 Parameters\nWith **request.parameters** we have an object with sended parameters. For example, with the URL:\n\n`http://domain.com/user/soyjavi/messages?order_by=date&page=20`\n\nWe have an object like this:\n\n```json\n  {\n    \"id\"      : \"soyjavi\",\n    \"context\" : \"messages\",\n    \"order_by\": \"date\",\n    \"page\"    : 20\n  }\n```\n\n<a name=\"a.2.4\"/>\n### 2.4 Session control\nIn case you want to control whether requests that have come to our meeting endpoint can use the request.session which in the case there will return the value of the session object. This may be via cookie or authentication via http.\nIf we want to control if the requests have session, we could use the object **request.session**. This migth be via cookie or HTTP authentication.\n\nIn the following example show how to established the cookie and how to do logout:\n\n```coffee\n  zen.get \"/login\", (request, response) ->\n    response.session \"10293sjad092a\"\n    response.json \"cookie\": true\n\n  zen.get \"/logout\", (request, response) ->\n    response.logout()\n    response.json \"cookie\": false\n```\n\n<a name=\"a.2.5\"/>\n## 2.5 HTTP Status Messages\nFor now we only know the json method superficially, besides setting the object that we want to return, we can indicate a HttpStatusCode (default 200) and a HTTPHeaders. For example:\n\n```coffee\n  values =\n      username: \"cataflu\",\n      name    : \"Catalina\"\n  headers =\n    domain    : \"http://domain.com\"\n  response.json values, 201, headers\n```\n\nAs you can see it's really simple, but to further facilitate the zenserver things HTTPStatus offers predefined. For example if a given endpoint want to return the client does not have permission just have to call response.badRequest () method and will handle zenserver create a 401 response with the message \"Bad Request\".\n\nZENserver offers HTTPStatus predefined:\n\n`response.badRequest()`\n\nThen list all HTTPStatus:\n**2xx Successful**\n\n```yaml\n200: \"ok\"\n201: \"created\"\n202: \"accepted\"\n204: \"noContent\"\n```\n\n**4xx Client Error**\n\n```yaml\n400: \"badRequest\"\n401: \"unauthorized\"\n402: \"paymentRequired\"\n403: \"forbidden\"\n404: \"notFound\"\n405: \"methodNotAllowed\"\n406: \"notAcceptable\"\n407: \"proxyAuthenticationRequired\"\n408: \"requestTimeout\"\n409: \"conflict\"\n```\n\n**5xx Server Error**\n\n```yaml\n500: \"internalServerError\"\n501: \"notImplemented\"\n502: \"badGateway\"\n503: \"serviceUnavailable\"\n504: \"gatewayTimeout\"\n505: \"HTTPVersionNotSupported\"\n```\n\n<a name=\"a.3\"/>\n## 3. Rendering\n\n<a name=\"a.3.1\"/>\n### 3.1 Our firts WWW endpoint\nWe are goint to create *form.coffee* file in **/www** directory and with this code:\n\n```coffee\nzen.get \"/form\", (request, response) ->\n  response.html \"\"\"\n    <form action=\"/form\" method=\"post\">\n      <input type=\"text\" name=\"name\">\n      <input type=\"text\" name=\"username\">\n      <input type=\"file\" name=\"media\">\n      <input type=\"submit\" value=\"Submit\">\n    </form>\n  \"\"\"\n```\n\nWe use **.html()** method to render all HTML code; it is similar to *.json()*.\n\n<a name=\"a.3.2\"/>\n### 3.2 Mustache template\nYou've learned how to return HTML code in a particular endpoint, but really, this is not efficient option. Now you will learn to use the Mustache templates that are included in zenserver to facilitate reuse and management of your pages correctly.\n\nWe are goint to create a file *base.mustache* in **/www/mustache** directory with this code:\n\n```html\n<!doctype html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <title>ZENServer</title>\n</head>\n<body>\n    <header>\n        <h1>Hello World!</h1>\n        More info & code\n        <a href=\"https://github.com/soyjavi/zen-server\" target=\"_blank\">GitHUB</a>\n    </header>\n\n</body>\n</html>\n```\n\nNow we create a new endpoint (index.coffee) that render create template when access to */*:\n\n```coffee\nzen.get \"/\", (request, response) ->\n  response.page \"base\"\n```\n\nWith the method **.page()** we indicate to ZENserver that search a file with name \"base\" in */www/mustache directory*.\n\nIf this file not exists, ZENserver search a 404.mustache file to render. And if you dont create it, ZENserver return a `<h1> 404 - Not found</h1>` HTML.\n\n<a name=\"a.3.3\"/>\n### 3.3 Bindings\nIn the previous chapter we have seen a simple page rendering by a Mustache file. Anyway we have not used any of the features Mustache offers.\n\nWe will send details to our staff so that renderize, this is known as data binding. To do this we will modify our base.mustache template:\n\n```html\n...\n  <h1>Hello World! {{title}}</h1>\n...\n```\nNow, we send through our enpoints the bingin `title`:\n\n```coffee\nzen.get \"/\", (request, response) ->\n  bindings =\n    title   : \"ZENserver\"\n    session: request.session\n\n  response.page \"base\", bindings\n```\n\n<a name=\"a.3.4\"/>\n### 3.4 Blocks\nImagine that we will use a section of HTML in multiple pages, it would be better to insulate this HTML code and to include it in all the templates you need, right?. Well let's see what we can do with our mustache template:\n\n```html\n<!doctype html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <title>{{title}}</title>\n</head>\n<body>\n    <header>\n        <h1>{{title}}</h1>\n        More info & code\n        <a href=\"https://github.com/soyjavi/zen-server\" target=\"_blank\">GitHUB</a>\n    </header>\n\n    {{> partial.example}}\n    {{> partial.session}}\n</body>\n</html>\n```\n\nWe have created two references to mustache block *{{> partial.example}}* and *{{> partial.session}}*. We are goint to create in the same level of the rest of mustaches with **partial.example.mustache** name:\n\n**partial.example.mustache**\n\n```html\n<section>\n    <h2>partial.example</h2>\n    subdomain: <strong>{{user.name}}</strong>\n    mobile: <strong>{{mobile}}</strong>\n</section>\n```\n\n**partial.session.mustache**\n\n```html\n<section>\n    <h2>partial.session</h2>\n    Session: <strong>{{session}}</strong>\n    <nav>\n        <a href=\"/session/login\">Login</a>\n        <a href=\"/session/logout\">Logout</a>\n    </nav>\n</section>\n```\n\nNow, from our endpoint we completed the new binding:\n\n```coffee\n  zen.get \"/\", (request, response, next) ->\n    bindings =\n      title : \"zenserver\"\n      user  :\n        name: \"@soyjavi\"\n      session: request.session\n      mobile : request.mobile\n    partials = [\"partial.example\", \"partial.session\"]\n\n    response.page \"base\", bindings, partials\n```\n\n<a name=\"a.3.5\"/>\n### 3.5 Redirections\nIf we need to do redirection to an another endpoint, we use the following method **.redirect()**:\n\n```coffee\nzen.get \"/dashboard\", (request, response) ->\n  if response.session\n    response.page \"dashboard\", bindings, partials\n  else\n    response.redirect \"/login\"\n```\n\n<a name=\"a.3.6\"/>\n### 3.6 Render files and streaming\n\nAlthough NodeJS is not the best way to serve static files zenserver provides a simple and efficient solution for this purpose.\n\nOnly we shall have to use the response.file method which will analyze the file type you want to serve and provide the best method of transmission. For example if we are trying to serve some sort of multimedia files such as video or audio, zenserver automatically performs a streaming it. Here's an example:\n\n```coffee\n  zen.get \"/vídeo/:id\", (request, response) ->\n    response.file \"/assets/vídeo/#{request.parameters.id}.avi\"\n```\n\nAs you can see it is very simple, since all zenserver responsibility to decide how to transmit the file is delegated. Noted that in the event that the file did not exist zenserver /assets/vídeo/?.id return a HttpStatusCode 404.\n\nThe response.file method will make a small caching on the client, by default 60 seconds, in case you want to increase or decrease the caching, we just have to pass in the second parameter:\n\n```coffee\n  url_file = \"/assets/image/tapquo.jpg\"\n  response.file url_file, maxage = 3600\n```\n\nIn this case, we have assigned the file /assets/image/tapquo.jpg a cache on the client 1 hour (3600 seconds).\n","maintainers":[{"email":"cat2608@gmail.com","name":"cat2608"},{"email":"javi.jimenez.villar@gmail.com","name":"soyjavi"}],"time":{"modified":"2022-06-29T16:47:05.763Z","created":"2014-09-14T14:41:36.990Z","0.9.9":"2014-09-14T14:41:36.990Z","0.9.16":"2014-09-16T11:00:45.141Z","0.9.18":"2014-09-18T08:41:00.978Z","0.9.19":"2014-09-19T08:59:12.197Z","0.9.21":"2014-09-21T18:13:44.783Z","0.9.21-b":"2014-09-21T18:48:14.890Z","0.9.22":"2014-09-22T21:51:50.780Z","0.9.23":"2014-09-23T08:20:22.187Z","0.9.24":"2014-09-23T14:25:33.601Z","0.9.25":"2014-09-24T18:21:23.614Z","0.9.26":"2014-09-25T14:26:29.837Z","0.9.30":"2014-09-29T20:45:14.501Z","0.9.30-b":"2014-09-30T08:59:44.803Z","0.10.1":"2014-10-01T14:55:56.893Z","0.10.3":"2014-10-03T11:56:04.621Z","0.10.6":"2014-10-06T15:23:03.377Z","0.10.7":"2014-10-07T12:59:30.476Z","0.10.29":"2014-10-29T14:38:47.115Z","0.11.2":"2014-11-02T10:06:07.005Z","0.11.3":"2014-11-03T20:33:33.975Z","0.11.5":"2014-11-05T12:56:14.922Z","0.11.5-b":"2014-11-05T16:03:36.729Z","0.11.6":"2014-11-06T14:10:22.612Z","0.11.12":"2014-11-12T16:07:21.313Z","0.11.14":"2014-11-16T11:16:08.203Z","0.11.23":"2014-11-23T08:14:02.719Z","0.12.2":"2014-12-02T03:08:02.771Z","0.12.6":"2014-12-06T02:46:05.547Z","0.12.9":"2014-12-09T10:59:07.906Z","0.12.11":"2014-12-11T08:12:36.506Z","1.1.5":"2015-01-05T03:57:21.144Z","1.1.8":"2015-01-08T23:47:20.924Z","1.1.10":"2015-01-10T03:00:18.183Z","1.1.25":"2015-01-25T04:38:56.104Z","1.1.26":"2015-01-26T07:13:13.323Z","1.2.17":"2015-02-17T07:12:56.307Z","1.2.18":"2015-02-18T02:07:42.702Z","1.2.24":"2015-02-24T03:53:37.066Z","1.2.26":"2015-02-26T06:45:07.299Z","1.3.4":"2015-03-04T05:32:59.805Z","1.3.6":"2015-03-08T03:44:31.579Z","1.3.10":"2015-03-10T07:32:26.350Z","1.4.14":"2015-04-14T09:20:20.093Z","1.4.18":"2015-04-18T02:47:58.423Z","1.7.9":"2015-07-09T02:09:43.922Z"},"homepage":"https://github.com/soyjavi/zenproxy","keywords":["server","router","restful","mustache","soyjavi","mongoose","mongodb","redis","appnima","file","streaming"],"author":{"name":"Javi Jimenez","email":"javi@tapquo.com"},"readmeFilename":"README.md","contributors":[{"name":"Catalina Oyaneder","email":"cat2608@gmail.com"},{"name":"David Rey","email":"david.rey.acosta@gmail.com"}]}