{"_id":"citizen","_rev":"266-4a32cd9afe925bd4a54332d5e9de4cb7","name":"citizen","dist-tags":{"latest":"1.0.2"},"versions":{"0.0.1":{"name":"citizen","version":"0.0.1","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"aad0435013e7e3c7533831624aa8d7c6a2b888d9","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.1.tgz","integrity":"sha512-clRFHmpMO8Prd4fFPbtKjsAUjyfrMNY6AB8xIWkS4Z1FhMfiK/daViNplQ/IMfhyx8J4BASYV0XIafRReacimw==","signatures":[{"sig":"MEYCIQDdIV4sIlBWwnsgn32swX5wOD8VnMRJgwnuDpN++tH/kAIhAPJfogxZE1GCDqD+Oc372NQbAu5UkAnzXssP98tqv8Ft","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"/Users/jay/Projects/citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.2":{"name":"citizen","version":"0.0.2","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f315a8b2ba016f64186b48d84148dca26b840903","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.2.tgz","integrity":"sha512-HFb8X1i5QsnwKU1aiHwMRzX11U/ZK9oTZf4yiFO67kFgFEEvS9/d9nAihn/HWogTiBcAp3LsyOYvGhWY4oij9A==","signatures":[{"sig":"MEYCIQDAMMAJF6eTS17jqZjqrw9LjhOHDOuRRhI+cGa0UKoungIhAJYNBlX+p0pSwGLnnHEY/Q/lGF5mIi9VPfP/y2dUgk9Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.3":{"name":"citizen","version":"0.0.3","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"354129383b5b8660158a64bc54984ac64d7982f8","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.3.tgz","integrity":"sha512-MAqvoFJN/afmYbOw6UsU6U6JXwaRo4FRLmrD9nEcf7G7eMUQBeQA28vB3aKOwFWYR2qmUclEGIA5k8J+tq+0zw==","signatures":[{"sig":"MEQCIBxhMNspkMjz6yo91RLGeQ6a7qjSom8RnQftUooeY880AiAWl1YFjW1cTxrHGo+ZsTVb8UNppXmtPCqLhxL/iGFrbQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.4":{"name":"citizen","version":"0.0.4","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f60169e32cdd9d6e4dea131bd3753e95eef87c14","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.4.tgz","integrity":"sha512-pT1Zy8PD+iWZcj31LzYARBRGbu5lntzUG8j9NZDHAFf3WTPMTZ9w38Txr0uJNAfLWFD6oBNN/CzxgwQikPH5fg==","signatures":[{"sig":"MEUCIHTotNwgrn6HbPGVKcsA6wan6HpItLzltcthr48Zzzy/AiEAv1VWFowzdqoCPtJQAsJM97qzYixTYnrlPGuTwyhzmKc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.5":{"name":"citizen","version":"0.0.5","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"86e69b05ff8ba28ac8db0803845d91f54ed995a4","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.5.tgz","integrity":"sha512-TwoZOGK/yMgx0QZmPWoE6CbJHaQooESwDkCUdUiLKL4JS+3Jv8pgIuV8zjD2QIc+0p0kTptY4vE85yvbrPAsFg==","signatures":[{"sig":"MEYCIQDwR2ZOyqplxN7LsBTPFsi8Ieen+kD1PF8WsuePza/Q6QIhALwG22mItlZ1Qv8cboP+oQBhE6Cd1aafuOVZzXQFzTYr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":".","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.6":{"name":"citizen","version":"0.0.6","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"9e71c5c1bdde307f0490e7367c16c007c0d5e8f1","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.6.tgz","integrity":"sha512-klOe0Negdxc8i6bVfid76WpQeRl2hodjZPnKA8KMRNNznOpspEhjiU/kchhGR71RZwOqCMPQzA4+rjNkBpEACQ==","signatures":[{"sig":"MEUCIAZG9S9yuHrIblyVE8/GcjNe+L7FVTpWQJrAcBcZNMOmAiEAjIPa8As6xp+baXwnzxLyujXSn22y54qg1GmwczfcB2U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.7":{"name":"citizen","version":"0.0.7","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"080fa692f0ca41ecd1ab674b04f3f62272aaa7be","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.7.tgz","integrity":"sha512-mGjx1fcxk/4epOD+95oy1WHbCIKShPWY3j69GTGFigaTdutWNKTAv2Q3pTfdS8trk3UI/aPMR+fsBWO3uW0B5A==","signatures":[{"sig":"MEMCIA+k+OpGd4SxrPCd2ZN2WJ/c+vFxytm8pD+42B6s2EuNAh8jSlhKMEFs54tzCZuZ+fp0vQsdENT37dEBVVF3ysj5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.*"}},"0.0.10":{"name":"citizen","version":"0.0.10","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.10","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3e9813d6d251af763997da703fa914810ffef8bd","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.10.tgz","integrity":"sha512-gsS0w0SkXJ/as46DTXCLnDG6tHj9HFFc2hY9puZ2Imb1VuwS4T1G6l3SugSWxd+714WXP67so903PoUhFzvmdg==","signatures":[{"sig":"MEUCICQ/f3lmnNpemCiMryNtLX9iAeBgAFo9HMbuGmCvao1xAiEA87aTAN2Zy5TkLPlGFydrw9nO5dKDQdx/FkTxqC2tb88=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.11":{"name":"citizen","version":"0.0.11","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.11","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d9c2661af1e65d1243d09d63e177b9ccc026e91b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.11.tgz","integrity":"sha512-KYOB6kopwQvOXr3Tl8sVKJmxq+YMnnqM6Fl7J0B4hjge/jQbecwPRSh6amGFliPTt/A2ZKhXi+IWmZ4MNdgPXA==","signatures":[{"sig":"MEUCIGV3odc5ILCo7uawsJSoMj347fIY3X6vCd3cnspJ2+ZxAiEApcrHLEIfG6B9YblMUE6DVQJYnfliLbYqeyc13nF3MCA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.14":{"name":"citizen","version":"0.0.14","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.14","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"08e219c9b934f59f7362f4370786ad9626ced45d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.14.tgz","integrity":"sha512-gtMZ8jfURqMfWlUrIYPdl2TCXA+WAb/6qMdcRaZN3Wy1JEEWdznezLkOKMZbuvh+U/GuC/G6jFd1W4qlncXCIw==","signatures":[{"sig":"MEYCIQCCtnMItTDEDLdLiNvjIBu/w6uPDLdtNtFtr0kXm6Dl8wIhANSNjAMkPkzStQbyYi6uqENasy7av0jPdCeuKyQhaNlT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.3.11","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.15":{"name":"citizen","version":"0.0.15","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.15","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"dbb7c429afe31e73bdfd2d3f598c9c38b4530926","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.15.tgz","integrity":"sha512-iJp55oZlDD4894oh5Frtpw2jmtP4Y7PokwERG5kLk29IKjz6i+ofDkZyF+6QbW/URt+YJ50OJqtCa7laOCNYbA==","signatures":[{"sig":"MEYCIQC4zERMDcYLHnWwV1ecdQirEFs9IErlO7MYZDiJo2+XzgIhANuslWFcoq1vVigjR8696WRgI8aNJovVOgypxq+9QKxP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.16":{"name":"citizen","version":"0.0.16","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.16","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"04d31b80d95582cc697ec519ed42b40e838fe4df","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.16.tgz","integrity":"sha512-a2P0+mnJHcJyI/e1O12n5X/pndgmr65N31SaTwVELzLsQlmYNhIq9sD/V+Eft4b9TvW1oA7f9md923HKTTf2ew==","signatures":[{"sig":"MEQCIATKdH2elFN4PTiHP97QR1iFWllLs+vX+pUmpPErj1pUAiBsFcxYoW68uwORBiNdRFL86rS8xdB0GbY/RcH0vK9KHA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.17":{"name":"citizen","version":"0.0.17","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.17","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"610f8b5eadd01d53352d5e22fb0069c946ac52db","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.17.tgz","integrity":"sha512-iPMCgclcr6sqM9QsHyfe021W0O9dnHIYFKcxmwikry3p0mnaaCKpXz4GJ3gf/n8fJu0MKBYdvXobZ62mWnBz1w==","signatures":[{"sig":"MEYCIQC4CeX2lAGyv+nb0OYFV52JD5PCncYn3HVeT3P6Sj+ojQIhAIkCeyuJkvJFDkHbTGlRJV1qw+v3jYDSWva5Eae1uGau","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.18":{"name":"citizen","version":"0.0.18","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.18","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f111c5495fb8cbbf7e1a8f917a2466ed7a05bfc3","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.18.tgz","integrity":"sha512-MVEEkgxJlsyhEjN+f83H3xyWF/4p7kuLFYmDwc4Jh6K6jm0kSnpYaaDE7XAddqahBbItCZSagAUew3gRrZvKxQ==","signatures":[{"sig":"MEUCIQDmZ0N9xRM5T8f7Y77RhpesB+Vvttt/Pg5RrZpeK0mGKQIgdiWrzD0M5W0KlUDYd8QWwQEauu0CVX4uyRjiRZPSszc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":"citizen/","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.19":{"name":"citizen","version":"0.0.19","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.19","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"5c8385092ba507a0d5667b62eef771757d6c50d5","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.19.tgz","integrity":"sha512-dIt5a3hRs6q7ADRjWi7QTUkxe2TDcY01hGSNNWl2fKM97ig8tdc1daqMjY+I16OLojFqbD1gmbR9gQlgDYRYCQ==","signatures":[{"sig":"MEUCIFdl3Ks2adfRjHiyQ7sQNfXs4Pk5NWVRDzydjKPdra9MAiEAydO9AqPz5BhMs3S8Mn9EbBv+3876+Q04gmAOPKRFzrQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":".","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.20":{"name":"citizen","version":"0.0.20","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.20","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"261341a6e11b0af6e3451bd090af19957ace3cc7","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.20.tgz","integrity":"sha512-TAog9CquOfm/feHuudPa0JrG+n2eyM7bMtjly1rWTs8FTtr/HRNMh1LDaF3ZMDDjYetwlueEZv7Ga2/tj+ZcjQ==","signatures":[{"sig":"MEUCIQCTxexKxlEAb84JL5t34Z1kave3a24Zsdki1rJQR16pAgIgYF5T4u8GS1+ngHPda0HkzGZercqz2FoeBWk0mHwSo6k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":".","engines":{"node":"*"},"scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.3","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3"}},"0.0.21":{"name":"citizen","version":"0.0.21","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.21","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3a015b7ef6b71fc238c101ef81dd713f4b3c2cf2","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.21.tgz","integrity":"sha512-uWhI2s5xiKgwuPaUDxiRI08ZTHDcU77+9bkP4yIjJViNhQ+fKGIPlyuosBcrRxPCUDjEHP5zxDKuVjC5hXOwyg==","signatures":[{"sig":"MEYCIQDRyE/xFmDwV6vzCNb3fQSC2jipspNow4cOG65tF9c6WQIhAMLKGb8y2KWmuFUatZd+SbkDK8IAB102yvTee3vZruFj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":".","_shasum":"3a015b7ef6b71fc238c101ef81dd713f4b3c2cf2","engines":{"node":"*"},"gitHead":"660cc961ca6a6d051a276edd445d667029368e7c","scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.23","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3","nodemailer":"1.2.1"}},"0.0.22":{"name":"citizen","version":"0.0.22","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.22","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d1d299eed6e8dea8b8391c26445966ec4f448a5a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.22.tgz","integrity":"sha512-vqO1/7O64iiDs4mA5/F6nYbdRbMbQG2/Qd24pqCfLyhoqHp/X6WxcXc/fORVC5Xht5H6fy6M5eG/D7SO+quzOg==","signatures":[{"sig":"MEUCIQDo86PNosntFtvTl+5fX/OCBXIy30DC+IQ4ISH7PrzLogIgYBswNlgsYFimqXPUy6S9grG8Mycwzbdwy3mKRQrO2oc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index","_from":".","_shasum":"d1d299eed6e8dea8b8391c26445966ec4f448a5a","engines":{"node":"*"},"gitHead":"4e7812bacb8d998bc70744030748d22d613db19c","scripts":{"start":"node server.js"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.23","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"handlebars":"1.3","nodemailer":"1.2.1"}},"0.0.23":{"name":"citizen","version":"0.0.23","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.0.23","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d5d8b9278da1e34127351938f32b7c4c9740f3a8","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.0.23.tgz","integrity":"sha512-SbCvB7JtzBtCEsp3SM/n2cZ5+E4OXw4HClqMdSzCAc4n14CKdpIvVwWdllfaaftNkl1x2kdk+11HwSxrlGlLaw==","signatures":[{"sig":"MEYCIQDzkLqd5rbDENe2iTpT2lh59fTjl/bB3nPCS7vEC4NBugIhAOTAIxr/88/96HMRPO2bbfeECUtRWTy76Ee0G3vDBvrx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"d5d8b9278da1e34127351938f32b7c4c9740f3a8","engines":{"node":">= 0.10.x"},"gitHead":"2667170ba1bc082c7f196634d8519b30203f107f","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.23","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"commander":"1.0.0","handlebars":"1.3"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.0":{"name":"citizen","version":"0.1.0","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"bc803a8267c584da84613e7c92322353261b16cb","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.0.tgz","integrity":"sha512-XdXYGWRVO+OHUAtx7neCEJKowgTUE37aAyHos82Gsz8R+FDI48ShorrY/+GqHUclMb459+7MtG20YSdYo0ZaCQ==","signatures":[{"sig":"MEYCIQCniI4ZtILLBcu/vORPeLDxJU7zB6VX8knW+Ir+VuF9vgIhAMr3JxiuzKH+Mhq6G5gnbcuc5SXSNxv+mgD9rQ74Mv/X","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"bc803a8267c584da84613e7c92322353261b16cb","engines":{"node":">= 0.10.x"},"gitHead":"5f53fb7013a247aa666e93da000bbfdf47bb370b","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.1":{"name":"citizen","version":"0.1.1","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"40b6b0f423a11d50c2cd26379433b9225dc4c920","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.1.tgz","integrity":"sha512-YiN/J+52OLjGUvO2IPp+jqez9fne/MuvV+5xQH4zTGtfyeNfdpu2OU1zdX68eq2ck24y4BVar5xQyFXdlQ0FRA==","signatures":[{"sig":"MEYCIQDJvvubRB6YRdxAe5H02XRiCnXiLt9Io6zIkDpPB13idAIhAJoZ2k36tIK4KVuUS3HVYK9qGnr++9t0sr7JY9Yf5/Z/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"40b6b0f423a11d50c2cd26379433b9225dc4c920","engines":{"node":">= 0.10.x"},"gitHead":"0a5087347459c39bd7cb487b60fa16b834c6d9fb","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.2":{"name":"citizen","version":"0.1.2","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"8ef61af4e0a02e11f3cb48b51559df3ffd778241","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.2.tgz","integrity":"sha512-Vl1BdOHQFFGbuNdXXh5ewfaSGNMESXt8nz6j5eifrmgwIv4M5urfkx4GkC9MrKz26uZfjTOHy86QJdsH7sjAxQ==","signatures":[{"sig":"MEUCIFz5MRisRFgFFvugSciZNIcLCQ3lu3PTD9UlYDXGmSIKAiEAohJtnioOjv84272NIAp6q+s+dKfecpucP+nE6yacAv8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"8ef61af4e0a02e11f3cb48b51559df3ffd778241","engines":{"node":">= 0.10.x"},"gitHead":"f17a9a818c836730dc45e70505bbbf34de412b14","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.3":{"name":"citizen","version":"0.1.3","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"dcd39245f92861753f388a82942d4926548e7fd3","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.3.tgz","integrity":"sha512-/nz09THc6Cw7B8eV2Xbz6MZtykkb+kW/niEP2Rhhk4QsoKMYHu/uPX9qiBx7qw5XXeXISQi9ZQ9zGhGvfO68ig==","signatures":[{"sig":"MEUCIFJHF1WSDbTh4T2gK6WQ0GwWEQrQh7gydJxb3D5dtxO0AiEAsiF+dwWjlSgAZIQzRoum1tfzKh/9n3IUmgQeXq5MkkY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"dcd39245f92861753f388a82942d4926548e7fd3","engines":{"node":">= 0.10.x"},"gitHead":"0a1b75753174b4a0e0726e19fbe49c20927579fc","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.4":{"name":"citizen","version":"0.1.4","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"916fbbc4daf5365f92ad2e91d325e2feb72b8fba","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.4.tgz","integrity":"sha512-iM0ld71UncOBQXArmbaqob6Kaq+rWf+U4kTJDTaJODEPtyaUKlLZXBALpNsjMxwlT95nBewzrTpVJqqJTiqM8w==","signatures":[{"sig":"MEUCIGfbZPR4ToP/WE+9xM7s7joYkbY/AM4TESNwtd66htbjAiEAm2s6hGkDI5Wst5hCD+8COWMeoEEdJvEtuQIxFinIW8Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"916fbbc4daf5365f92ad2e91d325e2feb72b8fba","engines":{"node":">= 0.10.x"},"gitHead":"189c653233672a7b40ef8ee3c87efcf0dd5a8e5e","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.5":{"name":"citizen","version":"0.1.5","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"43d38ac3d558bf781deb275d5b33adccb273f1ec","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.5.tgz","integrity":"sha512-mOXBBrRItNOBbacensNARGxIRyrADd66x5DnnR2WbSs7X3jZC5T6y5jpCL2fIDIFYHF9LEkmdg8/RDaMOydvkA==","signatures":[{"sig":"MEQCIAjcB4uTIhW691M3OJhtIji78C99exON2BuFyfVBQaHYAiBRHhn0jzTjy6AbfCOweK26kr/1YSb5rAr/GKjDr4EmMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"43d38ac3d558bf781deb275d5b33adccb273f1ec","engines":{"node":">= 0.10.x"},"gitHead":"5eb6932f3ec062eae65e0b0fe8a698b520bda21b","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.6":{"name":"citizen","version":"0.1.6","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"1e119129dfeec0aaa371d2d328dce42b0ace3b6a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.6.tgz","integrity":"sha512-EYwQBUwKErF1oE0jSMMSdn+/xSrEK8XgFhGEcimaHymXI05el2kRLHG7NUi3nrBtlYkkdSnmnieLgoUCGPeQBA==","signatures":[{"sig":"MEQCIBpg5QB2FdJt4ZZQEtqGUAIxNDK7HYDIYm63t+5XddFDAiA60/RXDCndN8rZsGy23jBo3srkBmJMxAHED3p6ohadhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"1e119129dfeec0aaa371d2d328dce42b0ace3b6a","engines":{"node":">= 0.10.x"},"gitHead":"894b4e216b19f81d9214983a1efc14de063c2c87","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.7":{"name":"citizen","version":"0.1.7","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"83a070102e2f58f3a152a947e1871fe5b27752a1","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.7.tgz","integrity":"sha512-J1fguXFZzwRwQgOSxyvnAtbOGF5/QBzkxcuYA09lOWfGfgKCRjRnD+lfIyvFB5JHaDtb3+DjKuKD8yqPoTBLmQ==","signatures":[{"sig":"MEUCIQDHh54//fWwoWkVowcsBy78c65skPZBIsUpFfIC23clUQIgBUu+LHNu/T75mYOPYnYuX/mn9A80dh0uU07vSqstCqo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"83a070102e2f58f3a152a947e1871fe5b27752a1","engines":{"node":">= 0.10.x"},"gitHead":"66a3ec117fbe15a3d69cb81b596716f3d590e2c5","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.8":{"name":"citizen","version":"0.1.8","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"6965e17516c9303eb5cefa481493ad3d8faaa7e7","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.8.tgz","integrity":"sha512-TxQKQTR5/erlY2/T7hHl+8RMONb7AYNGFhqHcIj1JccxUPqi3yH8R7HDOGkLOCAU+mi4KE2eXA1P5T8jyCTBrw==","signatures":[{"sig":"MEUCIHOwDrlDkf5oDpXKLZkL2cLn4Jz3mFIId6Apmy+r76JsAiEA88fXyiDc93aaj0e1DixjCZHV2eXqSR78/MlOYSgphdM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"6965e17516c9303eb5cefa481493ad3d8faaa7e7","engines":{"node":">= 0.10.x"},"gitHead":"2ffba38761e1c87929d905708a2617b202b26fda","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.9":{"name":"citizen","version":"0.1.9","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.9","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3537220349e088d650ad0d5530c1f69388c3c037","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.9.tgz","integrity":"sha512-Kt9ccy+j5KlBc0ustW3zY6avK1sg7A5w/3v4aGmb9ObO8QEWgTCGPeJ4Jc6UokIoUX6Dc20Tyvro/VYCKqj7UA==","signatures":[{"sig":"MEYCIQDstL0OiJkyD+Z8QszZQTo+tiPkSJihgQ0aiS3aRHH2GQIhAI8YUGfjGm7RWtduotFMIcX3qDF0HQp9caT4NAKhaTHd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"3537220349e088d650ad0d5530c1f69388c3c037","engines":{"node":">= 0.10.x"},"gitHead":"ebfa04d291854aa9a8daace64a1531ea309726d1","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.10":{"name":"citizen","version":"0.1.10","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.10","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"02ec3c9094eb76cd1108f74cfc9424aeac46eb5d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.10.tgz","integrity":"sha512-IW4UVlt2b4e6pmBwnatQJRn29COyaz8IylPQ9Owx86SkaHnQjQQyBGeSYuLz0sDqcWf3GMyoTaQ2KOvTTMLGAg==","signatures":[{"sig":"MEQCIBhHGVcZzAIWsSOtlfXVaincv1CwDORgyQ5428P4Ys8fAiAqoY/ELkgnTB5mGfE3Uw8i2zGQH78ICP0X8IhoaE0Gdg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"02ec3c9094eb76cd1108f74cfc9424aeac46eb5d","engines":{"node":">= 0.10.x"},"gitHead":"5dabb6c47606f0bcb38fb2078c2d9a765e59ede3","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.11":{"name":"citizen","version":"0.1.11","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.11","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"8006c694e4f6f64d5e5a90b8b1addadfd7b4c1a5","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.11.tgz","integrity":"sha512-I6L1lMI1x7cfwV2zmgTtGtTojiesvf8eEhWOc8oAojHiVB0dMDEN756R7yfb2CqXgwDpoWKDWZYYqxT3Od6ykw==","signatures":[{"sig":"MEUCIQCuolHEU2YJjcviRJTrZT2fo4id6aTFwPkpgd5ChI9GgAIgQDw287bB536haSxH16zXEyRCw02pbzDGb0Dy3mON/G0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"8006c694e4f6f64d5e5a90b8b1addadfd7b4c1a5","engines":{"node":">= 0.10.x"},"gitHead":"44285a52b6e34808c79e38cf0ff457ecc441d80a","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.12":{"name":"citizen","version":"0.1.12","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.12","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"380f9bab4e97ab37e825714e74d449fbc271e748","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.12.tgz","integrity":"sha512-fUD61dxC/RgNTTfJC9deU4PPymxF5Cimtfk0oPcfnFU4sh8i/18S/nAFkaGC0psW3MrcjxaGrE7B7QXAX2OhBA==","signatures":[{"sig":"MEYCIQD0R3LEPGzRAWLXHTtM6Il2fgjtXv8EzMVgZqtN+GIXugIhAMftTrvqYnmVqYI3ujmziSu0yQ6IM/Sm0sNkqsmPW+1i","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"380f9bab4e97ab37e825714e74d449fbc271e748","engines":{"node":">= 0.10.x"},"gitHead":"09a1de82c1eaee174db1bc14cfb20b8140d55ccd","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.13":{"name":"citizen","version":"0.1.13","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.13","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"5037730ac653e632ecfbd353eb8edde7d6ffe8b3","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.13.tgz","integrity":"sha512-Uqo0675ymLNq4bV66na3VPGqSJ1sslp6uc8KTP5GlrD9qaU1PBJZD1gp/yBUsBkQFLBc1sD80jFn1ONxTmHFrw==","signatures":[{"sig":"MEYCIQCbskpwKOAbexZ5qhfMhCymWaZT21LxXlhglL+TrlsGcgIhAKJM9nB1ROMl7RYJfxhjeSqS9j6SJXC8QtkJXiG8XV6W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"5037730ac653e632ecfbd353eb8edde7d6ffe8b3","engines":{"node":">= 0.10.x"},"gitHead":"672976710634d001c09888b5f622d7b54b05f717","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.14":{"name":"citizen","version":"0.1.14","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.14","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d214f60169ad729c638d9d386cda56f571860078","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.14.tgz","integrity":"sha512-ddzje4dOQc1vvVTwo3kgdEeZaoVC5/1Y2i8Pu3+olm17GYUHrmlPVB/fO/t2TqwijZJKy2nAj5lF0u1Oq/2wbg==","signatures":[{"sig":"MEQCIH0ui+IffbvwhDLT8mDOvXNcZQjsATFdV2H+OLtOIrixAiAmBrDZyVieWidxZr9hVHue9oe9StfH6j4lS+yMtre2CQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"d214f60169ad729c638d9d386cda56f571860078","engines":{"node":">= 0.10.x"},"gitHead":"9c9dc91f278cd73a2ecf241f4eb498bac5ed8cf4","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.15":{"name":"citizen","version":"0.1.15","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.15","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"528c8c4288fc6b349e7d4ca3f9ea4bb3d9a55af3","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.15.tgz","integrity":"sha512-7grJkCAkjH5/YorGoI/uOa+F+ulLYS0cbXayyQIIP2srt4TyqG8fNNZ9ApE9Hk5fIpUdVmFh1b77LJkWveJyWQ==","signatures":[{"sig":"MEQCIB/iVtLRMufTKF8548V/TiRWRkTxfCMsInVjSuh3ojNLAiBhbrziAWy1eXZd1W61sDhUhPcQZPdes4X6ecm161JlQg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"528c8c4288fc6b349e7d4ca3f9ea4bb3d9a55af3","engines":{"node":">= 0.10.x"},"gitHead":"ac70eb4f43ac43096ac590efcbb36a79cd8fa145","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.16":{"name":"citizen","version":"0.1.16","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.16","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"2321e65a1f60e22c300405240c83be1d06884e66","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.16.tgz","integrity":"sha512-jq8Xkwl80lRyzRvZc/4rsI3VdHDNHxOTXisGh3tjMtGUxiH+imVhTn4NE9PatVpxpP1k04MMU52L5kBXuwyJsw==","signatures":[{"sig":"MEUCIEEjOn8SbLo2MHRkppA61g5cugSJXzQXDCTJhJ/915lpAiEAi2Y86RwXTnWCOvnZpdI9hDqgBAIHYT5LuNBe6XEeUcw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"2321e65a1f60e22c300405240c83be1d06884e66","engines":{"node":">= 0.10.x"},"gitHead":"4f4e14133517988b70b7825789b9fad49fddde46","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.17":{"name":"citizen","version":"0.1.17","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.17","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d8c85401ca3fb4f9c6af133d20c35a57311f8de8","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.17.tgz","integrity":"sha512-AS5bdyCbnG/Z+8fPY0X45N2G/QDRZql4WT3vdq/uz1RcN6SKH3NoA67mLJjP8sIgpQdTm4e90cLf2O4y3+2GQA==","signatures":[{"sig":"MEUCIQCRhoNjw3j3h/ynBvAHxdmhtzUPqndfipgj1Kep4c3oCgIgJO1CXJPf1sBhrzG9zm2aOQLilP1RKwmV2wBO2Q7Q3Jg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"d8c85401ca3fb4f9c6af133d20c35a57311f8de8","engines":{"node":">= 0.10.x"},"gitHead":"b6017494739a629ef63b7518b5a95e691b33d208","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.18":{"name":"citizen","version":"0.1.18","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.18","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"b7aa8c637daf8fae4b0608fd214ac2844fc6d38b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.18.tgz","integrity":"sha512-VvK2F97kiSa6Ccnh5m19LmVlwkkYnPWuCuxH+yJT4+BhOKJruBe514L247GcrHywDujoVckXkFmKoa8HcoVgpw==","signatures":[{"sig":"MEQCIC2EUSAvMowvE8k+V54gPYcA4nsa3uIow40RVgonirrIAiA3I+TRWuOj5/qN/fDojm7KnFAFFUGv8N1hoLEc+YKKNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"b7aa8c637daf8fae4b0608fd214ac2844fc6d38b","engines":{"node":">= 0.10.x"},"gitHead":"7a4a648086b8c2a74a3ce939ec5b628b4fcdccb7","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.19":{"name":"citizen","version":"0.1.19","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.19","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"0851c5561131c541ac5ce4a69f3e9f90dd7e6035","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.19.tgz","integrity":"sha512-gBXyySQCozXgX57x3C1t3QHNHIUteVz3PWW7dY7io1lvUpLOkmldV64sIeeSyuDM5ZMN3fmW0V3NJHCyclbOhg==","signatures":[{"sig":"MEUCIFfyp9hcLuKQqOtGdpwOEtGknJ1ZMpI9hhV/+XJO9TaGAiEAlhKDOKq4lW7BCAPMk33+Q9QNLVn2gXs5Y4Tyg/le6J4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"0851c5561131c541ac5ce4a69f3e9f90dd7e6035","engines":{"node":">= 0.10.x"},"gitHead":"5c1c1367d1a9b017cf49e990645730208d1491a6","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.20":{"name":"citizen","version":"0.1.20","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.20","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"8c8dde100a4ac0b7b6926950530f2fd04736454e","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.20.tgz","integrity":"sha512-kV/LLYDfcHIkuvsm6Ki/BRPTOvTmnFR1ebNUTvzfFkyZ4lzva38l0McPDtVS/ytJH3MLXl3GArav03yf3Le8DA==","signatures":[{"sig":"MEUCID5LLrGeqPQhk+O1VyevdWo6yyj0z5YkS5sigAoXJ7VMAiEAudS+lUDuMHbQIPhF2tjyI1s96dEJo9BEn1jNQEFxB8s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"8c8dde100a4ac0b7b6926950530f2fd04736454e","engines":{"node":">= 0.10.x"},"gitHead":"858160a0fe8390fff1412b7ae30f941b23de71b8","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.1.21":{"name":"citizen","version":"0.1.21","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"_id":"citizen@0.1.21","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"938a43a0f41525e29a15884db07bdf926fc7063e","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.1.21.tgz","integrity":"sha512-rHHua7lIMeKb/ca3KY/wRA7B9XMS+oxKzQV9QAyIHnHbogzDTBYa1VOfLpt7ESnHkT3mCFGzCyem3ycqP0e+hA==","signatures":[{"sig":"MEUCIQDDYBx8DAJjEnQfabfddszkNXibIV9sZpkqNCymMs/UHwIgUPCMx+2tp1h0tPC5ulmgNImnDWkns5QD3OArhdQmR/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"938a43a0f41525e29a15884db07bdf926fc7063e","engines":{"node":">= 0.10.x"},"gitHead":"ad1186a227d4c4b26373d15ea3200ab532a2ee56","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.0.0","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.0":{"name":"citizen","version":"0.2.0","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3059561beb3b8de14bdf2e01c25487d3ff00a4b5","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.0.tgz","integrity":"sha512-RoT7/1ClKCmyhtBC123DlihvI7W1gYwm3AwFC0Q5y8URGyuSRLiVn313TMzV/1aYlhok/qZ6vlKqU+tB5gyhGg==","signatures":[{"sig":"MEQCIHOg2WIokrbY2FrcR6mQ1boLbdoS/6lSY1BsnhTdusnYAiAUkKiJpOT/0/CZuhb3oMh7f0yfMtAK8YIJGDgXaabaTA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"3059561beb3b8de14bdf2e01c25487d3ff00a4b5","engines":{"node":">= 0.10.x"},"gitHead":"87e22786ae65f8e23457bd4af1ba7ef92089e303","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.1":{"name":"citizen","version":"0.2.1","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"33de4c8b1317d7ab555fafa9dd0c41e5b108bf06","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.1.tgz","integrity":"sha512-ZC/vUyjQykg30k2qZI0w41mQy5fUIoqyFPdbsuFVUgI9uRH/rmzXu/dl3w2vzkcFtvQywGsEGfIrUeiFNLdUBQ==","signatures":[{"sig":"MEYCIQCLzm+LLRkz8AUkR3v/6V6w5iZUSTYtfP2yjxBkfFu1vQIhAL3rG0BtuKeHIVeTb3Gvo6bA6jFm/DZfQO7nijpx6FzL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"33de4c8b1317d7ab555fafa9dd0c41e5b108bf06","engines":{"node":">= 0.10.x"},"gitHead":"37ad8bff30f99eee49f816be777ef167285fa944","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.2":{"name":"citizen","version":"0.2.2","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"917dfe4960622c7955bbdfcb658a781e3d8ef73d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.2.tgz","integrity":"sha512-7sHjCOJEz/Y26WBr2SrNQicmyYSnqHpF0P+VtP53g8xs9PLmHCOB82UsksI0rj+2kfkdHGa7fDsCW9birRra7Q==","signatures":[{"sig":"MEUCIQCSUYtD5ASMwpK09rWnIW/uPVkzEQggsDcSacLslMRaRQIgMK6EcvF4Wx+ME4KqANEadnyHNrgHaJ8Ri2rhj5qv6rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"917dfe4960622c7955bbdfcb658a781e3d8ef73d","engines":{"node":">= 0.10.x"},"gitHead":"1c8bcae32abe7fd6888291b864a5bb7a4f7391d3","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.3":{"name":"citizen","version":"0.2.3","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"bb14a84df0e3e10f9af3954d6f3f88c963a0de09","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.3.tgz","integrity":"sha512-wcx3NalmEURkCP68fZ9KiHqMbnz57mtlxXidfUXJ2gIJmkrlOuNrJyOsuP0N0ThYFJyOv/yL3k6oMyq/7Yq0pg==","signatures":[{"sig":"MEUCIQDsPtVS9Tiyeu5k6sRk6FtE67zsyYIPlNE/PZ6OJ66XGQIgFQ0Kq2XVxbWZ9k+LoSFZkkDzku4jQr1yJSmi/3uSWz8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"bb14a84df0e3e10f9af3954d6f3f88c963a0de09","engines":{"node":">= 0.10.x"},"gitHead":"cc0714df4e75bea5893f3be967c154a9d889f19e","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.4":{"name":"citizen","version":"0.2.4","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f2536a52e54381db8649dc47f85ea65a5306e4c0","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.4.tgz","integrity":"sha512-GE7Dui71hDo0vYzdjWdJS+x1z6yAb+jqJnoY9DW5DHhWlqwrPv36IVbefNhjpDMEqFSVtl4RR1zAV2TIUx7wnw==","signatures":[{"sig":"MEQCIDoJ6I9sIikEzRWmG2gNZhFgSzKtWKVYhCIqEztPMp2+AiBV9SbwwVOhMlLJuBWoorYq4pG4zzhT7Q+DUHH6KZz0Rg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"f2536a52e54381db8649dc47f85ea65a5306e4c0","engines":{"node":">= 0.10.x"},"gitHead":"84890a6c5cffa7ad1aaaa5cb90d51443ba1f1846","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.5":{"name":"citizen","version":"0.2.5","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"a82e3d668d046562cc175cb641c8b40cc40a4bf5","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.5.tgz","integrity":"sha512-VYlxIigoCTh9OuYXbG9JSEXXlIHu4H4K7qSaqYjGHX4BY87D/2ynF2xaRLn/M+UoP3p0OC/jyY4b3kya+dG41g==","signatures":[{"sig":"MEYCIQCoSqxooVRi2hpphnFYE7pduC85je/1Y3gy8+vC9gYQ+wIhALjLSLR4mDBtxQeHPLTNPGxohYeTVj2S9tvY7zD/Y9tT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"a82e3d668d046562cc175cb641c8b40cc40a4bf5","engines":{"node":">= 0.10.x"},"gitHead":"c8394141370b731dd27d7901a86472ca938f4e45","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.6":{"name":"citizen","version":"0.2.6","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d987bd5de309eb8baaed86dea84b2a6829ebb438","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.6.tgz","integrity":"sha512-E3FfT+MdYRzxuBVaTBHqffqYV/bdi9LNbKCK750ySFrvhXN91hUGPReZGLESz23T9kQbSAHT4K0/r4CpEIZRHA==","signatures":[{"sig":"MEYCIQDOMv+FWeC64aBXr6tevDHQxSM18LtI4V6+TS7DgZqe7gIhAL22B6FqhEKqVqt1XkBtoimgl7w2iz16EpoxghhbdU0j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"d987bd5de309eb8baaed86dea84b2a6829ebb438","engines":{"node":">= 0.10.x"},"gitHead":"54227841094a9461d312e7b2041a577075f8cf25","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.7":{"name":"citizen","version":"0.2.7","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"42970ac902c33814de3e4cdb8022aff995bcbb0d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.7.tgz","integrity":"sha512-x+23pGH/zEr21laxGOyUmU6J0C8B0hW3ry7UlvXyOLKR39tFIPUPc/A/90qeGQfPtRuh5fy0Hitzq4YNQfZ+JQ==","signatures":[{"sig":"MEUCIQCCOoqJTsS3ZDB9fYLnFbAqDlLrfDJvZybQeenfPaYHXQIgCQpe+n4EmIm01Iq9waSKH7AWNgX7yzktZOdCandiDnI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"42970ac902c33814de3e4cdb8022aff995bcbb0d","engines":{"node":">= 0.10.x"},"gitHead":"e3a763e3b530d7c553401d2951d7b40d9babfa3a","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.8":{"name":"citizen","version":"0.2.8","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"34d2b39b17b2101f3e9958f9a8a2b9fd4fc8883f","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.8.tgz","integrity":"sha512-6XisXp+Ysn6rhSSy6u0Ul+TYB2eJc8Gplz7K7epNyv6yIecBHlBBUBdq8keEHg5Bua8wefMIIs0wlgmmjYmfBg==","signatures":[{"sig":"MEYCIQCAM7seIA/2nV+cvufKDeXS+nhUr3odQP7pZh1LPmvo8wIhAO9XfoZjHPOYIkbC3wRLoAIMGa59eVhpT8xox6OMfEmR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"34d2b39b17b2101f3e9958f9a8a2b9fd4fc8883f","engines":{"node":">= 0.10.x"},"gitHead":"dbe04a92c8608897a76ecaaa20a36ffa2b13a11a","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.9":{"name":"citizen","version":"0.2.9","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.9","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"a3e7c76c4c1ef4cc80806a35eb61ac1b2a24448e","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.9.tgz","integrity":"sha512-gIBNgTPWe9ivpNkwQIxmm0j+AsF8c9at9B4CJHiFW8zYEQHSnFQlgzv4pEB4YpSmnx2eUxTy0tInZoQfkD3dzA==","signatures":[{"sig":"MEUCIHloiAWXMoLG//7PydcDsL0T6JJEnIf/Mi8LWmX2eneeAiEAkH8qyy0VX491OlTRJkBLuqvAc4cERdzk0FWiXQI48Cg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"a3e7c76c4c1ef4cc80806a35eb61ac1b2a24448e","engines":{"node":">= 0.10.x"},"gitHead":"6ff0800180ae1d17379a9a382c9985d24fc06d4a","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.10":{"name":"citizen","version":"0.2.10","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.10","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"7f1f7e77e851f887ce61d1af3075cc8663319033","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.10.tgz","integrity":"sha512-bKy6oF4MLzPe8whdsPNzJgqNDNKsXeZfANGkRenknDvSXaJltVDej6gu7YtiHN/zOAU0+QhtsOtBlOoWejsCfA==","signatures":[{"sig":"MEQCIBKDGOzaeKkL3JVKs63t05kSVZTI96TsTqntQv0W/8Q4AiAgKIFkrBMiqQyb/4UBI611xszC8CSmnZG+pdtVmRskZA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"7f1f7e77e851f887ce61d1af3075cc8663319033","engines":{"node":">= 0.10.x"},"gitHead":"b17e5481d666e4aabc42eccc1e8d768c9fc18d25","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.11":{"name":"citizen","version":"0.2.11","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.11","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"43ada6f7fb973a67cc8f385ef3c9a2ae76067f26","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.11.tgz","integrity":"sha512-5WJ+CXZYPiiq6kXmgW1k2pnLww78AozJWNRUJTcTPSB4gKNCJBYWgriQPkllLqwzyFvCHMjdyQJfLhAFGBORIw==","signatures":[{"sig":"MEUCIDf/gUuZLTcGVT0vC2p5QLqTmueC/0W20kYXTHTk44hsAiEA1b+gzbDJ3X0RlOWO0CPt4WVoZ07I5g+1SH/cAMkWLls=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"43ada6f7fb973a67cc8f385ef3c9a2ae76067f26","engines":{"node":">= 0.10.x"},"gitHead":"6672193b1367a0f06de22776a3b94df88ee79078","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.12":{"name":"citizen","version":"0.2.12","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.12","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"bc49d20793c81eccb22d8fad321508b5d056b52d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.12.tgz","integrity":"sha512-Pp+HxIMqmxDmUkBANpPasnBsFV2kC4lU4HjlulTVwp9pyDV6G2CSTGoNB417/1vl2JoiU/z7HawA+q8IWvMXLQ==","signatures":[{"sig":"MEYCIQDusfUpWnTWgSMrjQuz0L8IYNevMyAmqTuQ4GCmuk8i8QIhAL4Y62gpra1tSnYLlQjXw/SBHgZGUXF2y40ACa+TgiTs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"bc49d20793c81eccb22d8fad321508b5d056b52d","engines":{"node":">= 0.10.x"},"gitHead":"9fb4d12eefe49ef0f64136bab8b6eee09c56aad0","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.13":{"name":"citizen","version":"0.2.13","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.13","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"00cbb9c245284ebd7a958efc6c5ff5e1a4d7ec18","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.13.tgz","integrity":"sha512-LwmGozT5vVN4hcU1xajKBgwanzZUF/vxhZoW8uvO1nJhXx7wiSPhZEknWZYPj7H6P/AEwAT9t2X9RYDnA3TFVw==","signatures":[{"sig":"MEYCIQDrZP/YQTFqfma2QawY0EODSEW0ic3TRKFQr/rh1L/zEQIhAPiksSm4czuvnVOc+7Q+TS5cNGp6wj5B6QJFeplZbhdf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"00cbb9c245284ebd7a958efc6c5ff5e1a4d7ec18","engines":{"node":">= 0.10.x"},"gitHead":"a6a65a035bdf2fefbf98d59c2ce724dae2690cf6","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.2.14":{"name":"citizen","version":"0.2.14","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.2.14","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3d8cda4ce1d7fb28da7ea8dba0b1005274cc37c9","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.2.14.tgz","integrity":"sha512-l9jVrbVF/7hbggyx6KpXJS9rs1CHlcqNmwpy3R/KhO6gtDp5Unpk2XxxguvKFLlG/7AJmJGod7Ucsc5305fgoQ==","signatures":[{"sig":"MEYCIQDj6jVCeRg7OZGf0ZiM0CwAqGiJUXsJzCx3NZy8nxbOgQIhALD7+NLGXVNz1YP3we7q7rquL4HTH2PcF4JWb9lClMzS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"3d8cda4ce1d7fb28da7ea8dba0b1005274cc37c9","engines":{"node":">= 0.10.x"},"gitHead":"ce183cf2bef029230a441fb7bc38ce012a2079d4","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.3.0":{"name":"citizen","version":"0.3.0","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"9372bbe0fd2d186a50422347e084c21671f43fcd","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.0.tgz","integrity":"sha512-Gk+rOPMR5k6gJ4EAvzlaPebd6v731uqArnio3ahhnOgwPP+zGOKCJw1oPngSMytrgSJ0OmMg2WprS653xTYy6Q==","signatures":[{"sig":"MEUCIFSZfBnFVTy8ZYEi6qPT7tzEEYjLw7F1hudzTfO0lFKSAiEAssz/gnxjWTpk7Lon3CaMZT8o/tiO/zstij0rSDgN1ZI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"9372bbe0fd2d186a50422347e084c21671f43fcd","engines":{"node":">= 0.10.x"},"gitHead":"07e3c8c208af6150226c20edad22fa8665f4d741","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"1.4.28","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.3.1":{"name":"citizen","version":"0.3.1","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d3a27bfbcf33f74ae2b4638309589eec571ee51c","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.1.tgz","integrity":"sha512-+bW8fkozXZgUnyaOLu/jT4/fYpm6DNVv7sIy/FSPbVJ7GgPSs6Ul9z6369ekRKfLEDRYIg3GBD7/MMOxfv2SCQ==","signatures":[{"sig":"MEUCIQCU6Fg9bs/7K98slpQKGFVzz+WDsQiYyMX997BAvKhSTgIgc3OMuOsfp6SPdiS9stX0bETaLGV6RoNTkGrQx3dJ+Zk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"d3a27bfbcf33f74ae2b4638309589eec571ee51c","engines":{"node":">= 0.10.x"},"gitHead":"0bfe0afcff7f03938a55f0e72b2e3678591db6a7","scripts":{"test":"mocha -u tdd","coverage":"istanbul cover node_modules/.bin/_mocha -- -R spec"},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.3.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.11.16","dependencies":{"jade":"1.7.0","commander":"1.0.0","handlebars":"2.0.0"},"devDependencies":{"mocha":"*","should":"*","istanbul":"*","mocha-lcov-reporter":"*"}},"0.3.2":{"name":"citizen","version":"0.3.2","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f4dd45e029382e0c73891d8c1f1ae582eb58d04b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.2.tgz","integrity":"sha512-r7Ij1sS+g3rqQBy4xSGkRgPQ7CHavPTQA+TGA+Xg10FBMgp/kEAMxnt0dGo+y1UjESf+IEPqx6WlI2x4RI06YQ==","signatures":[{"sig":"MEUCIGTk1oSHVdQF4QSiwgN1gpLZeluxcjX1qUdzl4xKsn3hAiEArll1E00rvBUUNgFc2U1Jt1APnw7E08dcPSVOPZFLT8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"f4dd45e029382e0c73891d8c1f1ae582eb58d04b","engines":{"node":">= 0.10.x"},"gitHead":"901d6edaa193a8029d8a48a6bcdf1dd238310533","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.3":{"name":"citizen","version":"0.3.3","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"aa74b0f4e910fd4ebf17b2eb1a04be6a7d41baef","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.3.tgz","integrity":"sha512-88RHZ0PjTCuInsnHzHkjERIh6WWF5csbQVRbTZHbv2CmdHq5SHqysdOjN/M8RVJx9sjVK9BTnyWDPoGUYMDmVg==","signatures":[{"sig":"MEUCIEk9EUDYEbyFF59SYjaHxfQ088jzyMPW5RxOJLwa/LpUAiEA8PdNGa2G9jMHxGb0UqZzQJYb0ssGZ3A4rqdKGj9nRbs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"aa74b0f4e910fd4ebf17b2eb1a04be6a7d41baef","engines":{"node":">= 0.10.x"},"gitHead":"c1fc1485213b08a058f13dbf1bc674ddf7720f8d","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.4":{"name":"citizen","version":"0.3.4","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c1bfa7ab3d19a47f520365f5ff5df710e7b7ff7a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.4.tgz","integrity":"sha512-IEbHTAO/FDiY7RWNVa/RtxT4hvv3euHrIgBluyPqzTAgtteg9uGxj9zs61njeZwYOgC1ypQiqui8VFs+ZMRAXQ==","signatures":[{"sig":"MEUCIQDlj8vuwKFnIypE6DoeWWnvOCXutFtXHg+jVz0OhFPcewIgHEHL1XKmEc+dlz3ASuEBOYr+0blqX9d8K4sAo9IAk78=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"c1bfa7ab3d19a47f520365f5ff5df710e7b7ff7a","engines":{"node":">= 0.10.x"},"gitHead":"8c3d6063d8a2d248e86a8e4c0f013da33f95e4a6","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.5":{"name":"citizen","version":"0.3.5","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"4e7fbfd26887be408102557200ac18c96023f7c4","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.5.tgz","integrity":"sha512-Ng8qCLVPJlEVuKZyCRDqv0xXAL9/jqdCYc77fVr1mChXzX9U0Pp6ePA0Kutn2I0vl5wdnenv9Pn+sEh465tz1A==","signatures":[{"sig":"MEQCIDUESpeyA8QyW3HOqx4sg9RpOyF8YmnNotQkuFMURvFUAiAWugs9/9ssCHRVujXOEO8+Q1yWQ9NDmS+Y1DkDiDq9PQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"4e7fbfd26887be408102557200ac18c96023f7c4","engines":{"node":">= 0.10.x"},"gitHead":"f7fa8f142f05245d0fd3993578f970977746bc76","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.6":{"name":"citizen","version":"0.3.6","author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"16b6ca60d5d5c2e9d20be46f003f01a97315a29f","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.6.tgz","integrity":"sha512-/qZqwOzCpIuNh44zdkDN0eHyN7+dR+YWtXSi+8bQ33aqTo5IOiMpJtiY3Rf5kjOBFWMwIbO3Qi4TBGhj4Nz8gw==","signatures":[{"sig":"MEQCIACOraCh1IxcFMu3RXPEklLX9UN95Da/gXxJADxQft0EAiB3hJtk2V7QVfZaZF2sNBAfU4mk905K2ms127JN4/c7jA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index","_from":".","_shasum":"16b6ca60d5d5c2e9d20be46f003f01a97315a29f","engines":{"node":">= 0.10.x"},"gitHead":"c7d6ed9947ce3a299256d7efc73b847f22afd45f","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"An event-driven MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.7":{"name":"citizen","version":"0.3.7","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"e9d172ddce893d7bf2db9d401a72061f73671306","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.7.tgz","integrity":"sha512-cFNzmKBs96fuX0tM9YrHt+TutvNXVwhdCvZ+twVSoJ4tXZ6TdyYAW9dnrVTUDWFbrNL9aqjhs2AUYUyXuCL0Ew==","signatures":[{"sig":"MEQCIDLKhunrEZhcHNI37p9s56hrUKX3/XTSvJjv7yqviWH6AiAllr6sEdtogOwU6vtsB+aaAoFWTAatcJn325TsB+0byQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"e9d172ddce893d7bf2db9d401a72061f73671306","engines":{"node":">= 0.10.x"},"gitHead":"6701b279d1d373d8230dc80dd650bb57babe888c","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.3.8":{"name":"citizen","version":"0.3.8","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.3.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"e322ed5444fb7a2b79711fdc89295d2568cc2157","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.3.8.tgz","integrity":"sha512-97UTPKy2/z98J+go9LuGIWookTktBw08qlo9NE58z4HDEdp/9vUFrreQD67r6IKmn3v/Y91Pif0g0BeAwcWUHA==","signatures":[{"sig":"MEUCIQC4wcdaY8Ztzy47GdjMcFLpG7mZ8NtjYDrrHhfHf6QwDgIgLNJU7p/xVQalKiMBfzP+WxDgbp01K1dP7ONrsOCVNu0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"e322ed5444fb7a2b79711fdc89295d2568cc2157","engines":{"node":">= 0.10.x"},"gitHead":"1d800a426a062236b86513fd16b4e8a43a6f2373","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.4.0":{"name":"citizen","version":"0.4.0","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.4.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"77a141eb98f2eb20d12c294469005febd4f81335","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.4.0.tgz","integrity":"sha512-UYADHVruXgfTcknrVk3gWJBDQPHyTCuBpK3STq7RON1Xavczc15c17LQuxrJIUJwczaIbiyy27D/4U11aL1QXQ==","signatures":[{"sig":"MEUCIQCRfD7wRiE3v1KHzwcotxv1v/lMA2s8HWPzuLJ5Ssi4CQIgbnYeApBXILPAGeeLwU/5W8lJBYZswQ5z+/ICucKKM10=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"77a141eb98f2eb20d12c294469005febd4f81335","engines":{"node":">= 0.10.x"},"gitHead":"cbe7dd45e2a2468694d07dd1525ba4e70107780a","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.4.1":{"name":"citizen","version":"0.4.1","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.4.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"916e6134db25a233ac4a7144e7ad50dd63fce852","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.4.1.tgz","integrity":"sha512-+zhL5GWIb+bToNA/wq1nEt7mnLtDbAVK4mA2lmodwN4tNLr7sXDw6FkXPSGFU7U6W0ugqpeQG5XTsTcwuGJDPw==","signatures":[{"sig":"MEYCIQD9GKLGEA7bY4H9eTjAZw0CEbSN6oRzto6q4+K/nPouagIhAMbwMbvdh6qVj5WPLLPRWFFD3NI3XisGlJq6kRRmhokg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"916e6134db25a233ac4a7144e7ad50dd63fce852","engines":{"node":">= 0.10.x"},"gitHead":"43d2dca18325a85aca891a92fd90a5c0179f819a","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"1.9.1","commander":"2.6.0","handlebars":"2.0.0"}},"0.5.0":{"name":"citizen","version":"0.5.0","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d5c414c61e4529ad40ecc8b801e5a9004ca8240b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.0.tgz","integrity":"sha512-UEorD0Rrc796WVZsBI5NjHGrAbXdJeZh2Wlk+99PjmPwFCBVOb2R8XAoH1q83W/mVdrrRecOfJKrWOnQeUiikw==","signatures":[{"sig":"MEUCIQCbj0Xw2jNlDgJiDCURmZSXqRomxH/+XqW50GET03d5jQIgIHxafd4gQEZN9lAzo6oC1Cx62+k0F6VjiJLQQgYbFOc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"d5c414c61e4529ad40ecc8b801e5a9004ca8240b","engines":{"node":">= 0.10.x"},"gitHead":"0d5bd000504841e2cd3ba5918cfa5c0d5ca2910d","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.1":{"name":"citizen","version":"0.5.1","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c1b5bc072a7db7ae830ba70e60a7ce9ffed92492","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.1.tgz","integrity":"sha512-uS9Ryx3LSifjZoKRy5pNKz4EC9JIkpwMJ1OkGZkTASGLmdszoBh2M9NeGhMQ+5OLvAJWNfw1Vh0nTH9UzQMO6g==","signatures":[{"sig":"MEUCIQD4sVBt4pE2aFt6QF9eCs/s9XXEhpMl/o61XJU9+LbSPgIgdb2EuyJsoFkH4jv6jcpydKx44iFw5lnSbOfITXyCgBA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"c1b5bc072a7db7ae830ba70e60a7ce9ffed92492","engines":{"node":">= 0.10.x"},"gitHead":"77463fa06d66eebb45314ac73fed019f026f5788","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.2":{"name":"citizen","version":"0.5.2","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"e05bbb5b49012196168483c9349cff1cc1fdb5a9","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.2.tgz","integrity":"sha512-jBLW3m//dbt6vnrsacWWcC0WuTgL6/7K4qddoR6GRsyr7kSHW56O1PqtQuMioUdKjlGpfvb0uPaCl9jFiKjl/w==","signatures":[{"sig":"MEUCIQDukPA6HmhLEAU32n26rHtJw1hiKSflE4iDEDdxNh33PgIgZ8J6K/r86q9XDCwZbiJr00Cjyxu4ID28VteJUxMP07k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"e05bbb5b49012196168483c9349cff1cc1fdb5a9","engines":{"node":">= 0.10.x"},"gitHead":"4db84dda2a806b533039d7a8e44ee49d01150f5b","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.3":{"name":"citizen","version":"0.5.3","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"e31f06eeff019cad481e6da941fccfc473ead570","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.3.tgz","integrity":"sha512-6vnB4C05BBOZGZUx126rRuL7owvhbGLL5aCWfz3EdQqnPPQQNuo1iZ6A7aJLk5hkgCxcGHPvcRwnZ26Kpay2lA==","signatures":[{"sig":"MEUCIQDA+NbMjw9NkUedDA2QfmXjATFC3YEtJ0EIOD1U7lRudAIgHA/bcMgTQLTshdkJ1qtPrNuuMSaFAJb37dQZpUajyJQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"e31f06eeff019cad481e6da941fccfc473ead570","engines":{"node":">= 0.10.x"},"gitHead":"1f47dddf95006262bac5e4a3611175fbbf5b6317","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.4":{"name":"citizen","version":"0.5.4","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"4a277fa9541ec0fa9631cf368eee06236c25be62","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.4.tgz","integrity":"sha512-c+VWkw9fW0oK5Z/Zg+ygQYYwC41wrzS8TUQ7jPhBhvgg6MAmBrrEMqbghxypBDiq7WAicTZiq1N9OKx9LmlVRQ==","signatures":[{"sig":"MEUCIQCIDWtligV35I7Aq6g6lT80ehQOJRdIPYhQjNQihRmyggIgdutpHa2GRfkL5QxT5fMaaH2VsQ77EV4Q4Im3/0QP4Yc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"4a277fa9541ec0fa9631cf368eee06236c25be62","engines":{"node":">= 0.10.x"},"gitHead":"ed9e219c0e8bc2ddfb91da36708452e2b3d3fe59","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.5":{"name":"citizen","version":"0.5.5","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"9584d5c0ab78504ddfe1b47a536082d47d96bcec","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.5.tgz","integrity":"sha512-Pehm7Tzos99IV/RTNlugq1BqysaHuKvI1hKBExswDyMrD0fY7upGWJ9hXMzVicVSH3C5U9v4JflwfBXCsO51Zg==","signatures":[{"sig":"MEQCIGhFiXXhXiXtGeInCZgRT5HnhWz2jUIPrNulsPYnc7otAiByFsNAjmSkY7k8fV3SsP3i/URa8C37jgGkbk6PYyukTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"9584d5c0ab78504ddfe1b47a536082d47d96bcec","engines":{"node":">= 0.10.x"},"gitHead":"3e3a5cec3b91393752b1e77656e74e709d53bfe5","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.6":{"name":"citizen","version":"0.5.6","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f9b987714648a690d8f5d48e577940a73ff215a2","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.6.tgz","integrity":"sha512-W5za0+XIx0mm/hEzceU+MI9fpGJFu8MRhL4nBbRSNg3Ebrp9oqadIGGKZcE3Umg5FqVgzETqW8R5H6PZG1ZSTw==","signatures":[{"sig":"MEYCIQCE2VUUBkGqeHDF4Lkntm1vDAP0IqlkPxO5RJippNWn1wIhAMNRVCysiT+Htd1+zJskQ1/dLL+SjdMXWgNDu2QdFmYr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"f9b987714648a690d8f5d48e577940a73ff215a2","engines":{"node":">= 0.10.x"},"gitHead":"8ec867fcea0acefa556e4aa0ecef922c1569ec71","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.7":{"name":"citizen","version":"0.5.7","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"2e1099cef2c9cf2f43c25c917a77cb79a97e4c31","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.7.tgz","integrity":"sha512-mFeYpsaoztmD9mF6ghXym6FSpjyuI6HkVCqQ+p4RpJR+IvWqFwM3cS+Cbb4kW/GFLSL1EO+lAIB6F4L7LvefWg==","signatures":[{"sig":"MEYCIQDbFkyTi1//7vIpfdHIYnzqj9pR8WQzh+9id7E7g1NSjAIhAOoWJ2pj+WEo60VKGCg60CbJ67TWmB+1xV++JxV/U127","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"2e1099cef2c9cf2f43c25c917a77cb79a97e4c31","engines":{"node":">= 0.10.x"},"gitHead":"61099bfda8ca8a4bd9c4b2de6e77f5d275fbb642","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.8":{"name":"citizen","version":"0.5.8","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com/","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"f77eb44619460c0c6c7cde3859f497e195e92fc2","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.8.tgz","integrity":"sha512-as+CVlp1sdLqGCeZfoaLE1axvTl1NxhEAAl+Qpl3jhxKBzQWaO75hmiFjzTdlgItr0JMTO08+tJhZSKgkZ567Q==","signatures":[{"sig":"MEQCIEPQQxOeR31qfMaFhA7xrujpeGwjHxunU4SDtn6i3CyBAiBa98BdrXooIrVQFW55N/mSsX7mEL0pvau7LOr+aSVHcg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"f77eb44619460c0c6c7cde3859f497e195e92fc2","engines":{"node":">= 0.10.x"},"gitHead":"c7b374c4aa185c55e65e10b67a270438d46726b7","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","handlebars":"~2.0.0"}},"0.5.9":{"name":"citizen","version":"0.5.9","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.9","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"91fa149ebec8f2cd0fa5a5f02003080ea7d9c905","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.9.tgz","integrity":"sha512-NgCTxj5/6BuMcy4trS7kwcDytcvoruhc5ciA0TtdfBJALya8Y3KbsraU7PsUPW4CBHBcIm5f3cSn4s2EXushyg==","signatures":[{"sig":"MEUCIQCX3y4R/hcZ2M1w5PFCJzSzdMqAEB/gCs7MJ3RRcRRA4AIgNed46/e6obisL1tzu6Oo1i/7MKRnA6Mvz6ooPVpxAG4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"91fa149ebec8f2cd0fa5a5f02003080ea7d9c905","engines":{"node":">= 0.10.x"},"gitHead":"889fee8f54914506c18a68eef609d681639b5b63","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.5.10":{"name":"citizen","version":"0.5.10","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.5.10","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"492dec45ddc68925670f5cc773100ea26a3312dc","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.5.10.tgz","integrity":"sha512-3kzXRzQGAsmrljeuJCzU3880pmXk9xjpOwVXK1+WBTbVDx0y8CBSpiQLxB+F62S+RQnUJHI3OCBKiNm3Ykkobw==","signatures":[{"sig":"MEUCIQDeXODyxoQ7ycFC8I0n/UQIDcUFfq8lON9mx7aBDk3iOwIgTx0TtzkxKj6uBcifhTWXVs+e/33iKi2OdIWVl1psp78=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"492dec45ddc68925670f5cc773100ea26a3312dc","engines":{"node":">= 0.10.x"},"gitHead":"b53e5ddff872323c0c5b70072b8893d36e336dfe","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.0":{"name":"citizen","version":"0.6.0","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"b87dea22a899750111568abfb5c608b0f14c2117","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.0.tgz","integrity":"sha512-d/fTp1GnGbCp4YdV7Wm7j2Zg9tj0gzG5wSlHnEAv7EstkrwwhvDY6X7158/gL+DPn42nMH2M8TZ8USyNp6whpA==","signatures":[{"sig":"MEUCIQDElqVuyRjp5h9U3lUWop3xpXs5nWItuC3GIWhxC9MoCQIgEJjTcnA1kwtdSH7kVCqUAcdC++6UJQeND+SGblxP4ow=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"b87dea22a899750111568abfb5c608b0f14c2117","engines":{"node":">= 0.10.x"},"gitHead":"e3a19c908575703e530e808ccb02285a5efeaff8","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.1":{"name":"citizen","version":"0.6.1","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"e9d70d7725c965eec3e2d4b5d475480f1239eada","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.1.tgz","integrity":"sha512-vyef18zBojZYykMcpKdM8EFpmtlmCK6Ryb7EmgbzhkHBYX520GQAoElnWUbi5v/N+1s/5gTbQ3+obNJe8BoGyA==","signatures":[{"sig":"MEUCIQD/hAJKYCJgJZ4XXS/0FipvPy/y1GIFidMKP/HW9FCp0gIgGhRNQepk7TvjIDtS9q3UnfKsYm18AZw/t1Ngo+Buel0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"e9d70d7725c965eec3e2d4b5d475480f1239eada","engines":{"node":">= 0.10.x"},"gitHead":"9aa0fd470050a1f6cf0221c876127a2aef49154a","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.2":{"name":"citizen","version":"0.6.2","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"bb4ef51a40377485df2c6ecd2e3be4274c5a8d5d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.2.tgz","integrity":"sha512-X7yO6RVpqpYgrY917FjLYRVY5/hI9TlTGUTZWhLCYu0pYOLsR0NeKbxr0B68hNtivK8Yf64nWGLGndnfaVztMQ==","signatures":[{"sig":"MEUCIDAW29r5cqFYYCykGpeVfXEO4kqcwTSMOO3e6P9VFpuxAiEA8sJQPaLs87s8Rj1nQPJk0LlVsoJKDDU1Cnv4uGesM4Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"bb4ef51a40377485df2c6ecd2e3be4274c5a8d5d","engines":{"node":">= 0.10.x"},"gitHead":"599c582691a5c73db9e6e5859845257008b21ec4","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.3":{"name":"citizen","version":"0.6.3","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"16813fae5c69258316e89d11024a110f179426fe","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.3.tgz","integrity":"sha512-hYxE69Frv5w7kFiOsu+aWK4RN0Qzu7IZLIrQXcWw7ruS7S5caztzVtoDcljb4JQFXdd8eS24je3JciT//jJ7VA==","signatures":[{"sig":"MEQCIAiJL4dkew264DZlXwQ3qrm1OlRhE934CWVAXMruFVYPAiAsFcvtMsWxfzz3gipl2QQUFXsJJHoIyiA5nVSmfpnWPg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"16813fae5c69258316e89d11024a110f179426fe","engines":{"node":">= 0.10.x"},"gitHead":"430a6892daf81589c538df513ec10a706ef5f9c5","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.4":{"name":"citizen","version":"0.6.4","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"672351734e86651b0240ede25e483d5c3cb28e11","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.4.tgz","integrity":"sha512-LJikUttBUTrAh3BznMXOk5SrER5IR/JlDcmXcuQJo9wLA7s3mMwWapXRE6tsxVuj3O/HXbdRe2VS/vZ16KvrkA==","signatures":[{"sig":"MEQCIGAMBfnSYxJMohEBFjcNfA6QrjELw1qRoRcltQuCuX/QAiBUqRq9s1meKW4tr3Nl6vjxWHzy8dfnNbSkUovo4lh0ig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"672351734e86651b0240ede25e483d5c3cb28e11","engines":{"node":">= 0.10.x"},"gitHead":"b4ef748fe31849f880ed70b069b1f09b49b14307","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.5":{"name":"citizen","version":"0.6.5","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"9cbab241a4b5813ba0c2f0694868fd77bee46a8d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.5.tgz","integrity":"sha512-fSQtBCX3XQwpaWdJu4yOy5Z/zNagrTFyjGbG/nRBMl+F6C37dWhEog8REPU7OSbOnVAci/PhVWY5ZAP7q3DdaA==","signatures":[{"sig":"MEUCIQCHLQqHHpVS3s6uEcgcyUS3FFZl9YLw4Zxbgz9JJby+bgIgE5765pKYiUgHGHx5lOywxf/QT6YclAX/i3++qJP0cHQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"9cbab241a4b5813ba0c2f0694868fd77bee46a8d","engines":{"node":">= 0.10.x"},"gitHead":"7c1f7dd4e2cab27b390358c10ca92078c9c29f5e","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.5.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.0","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.6":{"name":"citizen","version":"0.6.6","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c5252e6d0e0365dec7242bdbca069a7f81833c29","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.6.tgz","integrity":"sha512-moOBbLo8eDvwmKoGJPPZl3WtAuSq+YwCk9QiY/qDDTmtpToQoFzokQCJn+n41s2TDkQw6cYe7XRGOHG9MMi7sA==","signatures":[{"sig":"MEYCIQDwpZSn4zPXGJaO0cYk8W7+HiKVrz5WMrKAJmPEb4ZMDwIhALdysYuAO2gXSdrqF4E7R5sFUpOUnfH931Cj4k944PJ4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"c5252e6d0e0365dec7242bdbca069a7f81833c29","engines":{"node":">= 0.10.x"},"gitHead":"f181fcc28e82ce3f60d2e0495f08ebd876c0a75d","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.7.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"1.5.1","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.7":{"name":"citizen","version":"0.6.7","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3fbc081d6a37ac6d6bfd57b04e0aefdaa7140a19","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.7.tgz","integrity":"sha512-cu00YhlEon7P3xKPWQdRjwiHY3TapG2Jd8HzHWvndfxdLJPEdpZ7qA1El1aDN6f+twkweRgQudo5ehUEqnNVtg==","signatures":[{"sig":"MEQCICZj8nXtsQepZBX+aOjMua4Bgq62Lh5sQfSsamMdsU30AiB8OQqK5BFdyDU/9XDg136sWZ9AfgiMYhjv+6WrRe0zHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"3fbc081d6a37ac6d6bfd57b04e0aefdaa7140a19","engines":{"node":">= 0.10.x"},"gitHead":"44d2b0585c793a595bb4ffd862c415ce4f025ba1","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.7.0","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"1.5.1","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.8":{"name":"citizen","version":"0.6.8","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d5da758761b30d687f9de0f3a0a633f937e1adfd","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.8.tgz","integrity":"sha512-yi7DkgwPu2pRCr+tsOO0YoREIUFzoCB1BbDv6hjZMdSwp4Fh1NIz91BNGXfo77nSKTzzhxXzPsQv1ryTRFNKRw==","signatures":[{"sig":"MEUCIEDko7wfbUCwGkZTogytSFJ4um+1OgE7yTYsXdESvdlCAiEAtOGsHITlo9thLXNWaN0/vnj1eJZAGtbBlB4J29FEm+I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"d5da758761b30d687f9de0f3a0a633f937e1adfd","engines":{"node":">= 0.10.x"},"gitHead":"a37d6af9eff1a1079c5427f9ace878ac3a390b4f","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.7.4","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.2","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.6.9":{"name":"citizen","version":"0.6.9","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.6.9","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"0486f12a4abdf2f5edff2dd1cb90418845b3cb28","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.6.9.tgz","integrity":"sha512-Rrfgu/OnULs9f/bs5b1t2wmUvHqdRhFFClumJozyB6k6YQIgngL/cADyHV4RgJWk/ADdIF6IBWr1sVCGTdS6KQ==","signatures":[{"sig":"MEQCIHM4uDbacy/mr+JWYKMtNXxMBcmj1y8uG9NaA5FS197IAiBq4cHDOA7OFXwYLiIlkASdOdXuHD5CwPW8ph7s9BjqhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"0486f12a4abdf2f5edff2dd1cb90418845b3cb28","engines":{"node":">= 0.10.x"},"gitHead":"a1854a91837d836c180559d02ff5a256e9c44674","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"https://github.com/jaysylvester/citizen","type":"git"},"_npmVersion":"2.7.4","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.2","dependencies":{"jade":"~1.9.1","commander":"~2.6.0","formidable":"~1.0.17","handlebars":"~2.0.0"}},"0.7.0":{"name":"citizen","version":"0.7.0","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"18894d01340683a47fe185d75c667f1fe6421ea9","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.0.tgz","integrity":"sha512-f6sgCo99Qw8WsSciw8plevgPnfgbl65bBa5Pjb2cVny3bJvu1kfNt6CUr/8jDoqzjoXpULfe2TjKMPR1lPUVgQ==","signatures":[{"sig":"MEUCIQDDljFHzvsVzunXpbfQh6XiIIi3cxTB7F7joRwz+RPFpQIgJ0gZ03zCcDHJFwKsnzSbl6qiXVulS+4LeU6PS/rv+MY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"18894d01340683a47fe185d75c667f1fe6421ea9","engines":{"node":">= 0.12.x"},"gitHead":"3a3f6ee8c345e9efd86425ee186f32e34fcd75b3","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.1":{"name":"citizen","version":"0.7.1","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"2f26989b00721fa22dd6e6e25a6e96df16f5e204","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.1.tgz","integrity":"sha512-xKKLBx+NKOiccMjqug1Efw+LEz7+Yubtx/62SGHYesMDUkg7OruHLvvF4p+1yTaUfA8JnCPEXHBv4ertfw/ZWQ==","signatures":[{"sig":"MEUCIQCAo+roJrr5ZmMPtuKbDOp27ctN9nGTOwT+cFPPX8+n9wIgbCLpRfSiXmejxV2f4jFGgIB0kLdwXH5I19UDBeCSMsU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"2f26989b00721fa22dd6e6e25a6e96df16f5e204","engines":{"node":">= 0.12.x"},"gitHead":"19452cd3a0a309ebfdd4b45b5cef0fede6c448dc","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.2":{"name":"citizen","version":"0.7.2","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"70bf70ae71d104c9bc7ddc65b3a74a897e665255","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.2.tgz","integrity":"sha512-2ISOlQxKngLlbldbLC6o7enowIFpuxyUXy8YlBNqlThtN11gs8MUcINoVrFshoHS/gpGfzI2zFxA2mOqJSWcfg==","signatures":[{"sig":"MEYCIQDIuVLGtyCcwTHHjMkIEBYV0spirTrU8XRVg/XsUgxlRAIhAIhcsV/jv5GKJEOUCqP8Gnxlxfhv0xQOnXMyCi9KUb5v","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"70bf70ae71d104c9bc7ddc65b3a74a897e665255","engines":{"node":">= 0.12.x"},"gitHead":"b16aa24b5039cbee544816fcbf3167459438196d","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.3":{"name":"citizen","version":"0.7.3","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"db11494738655f4ba1c539dda106ba5418e97a29","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.3.tgz","integrity":"sha512-2BKVx1tplgM4mmU2oJTDrN2du57X5iqCDQSt7fkCHofLg5fdSIrQmr48YNYZB9z/G7KWUFxe6qkjWfmCHCAlxA==","signatures":[{"sig":"MEUCICOPge9DN7eUH8/6qSzfshUNjatqpzaWxnOTJlSQcrilAiEA0SJVotRUN6vSZ+jqZJsX6dRMi6LbjX3/Te0gVLIbez0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"db11494738655f4ba1c539dda106ba5418e97a29","engines":{"node":">= 0.12.x"},"gitHead":"2cd0139559fb5c87d23a1f046c9db36ef5be2de6","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.4":{"name":"citizen","version":"0.7.4","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"ec4de67be4333a32b9a16d16b16601280fb1e14a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.4.tgz","integrity":"sha512-wF3E/RMywwxpB/tWy/zPycLpTLz353mRR4PoXjEwMK5MCY1thuKbqZEe8PLo9qXYkrRLQW19FqiF7cxOybHNDQ==","signatures":[{"sig":"MEQCIA+OLw5ycBPglfeoJDNHrY+N/qyeGQbe9EjrQOWOF4s8AiAQHzrx/716NR07XD6xTEiVPgbtGpFKzN/EDPmH1xk2Jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"ec4de67be4333a32b9a16d16b16601280fb1e14a","engines":{"node":">= 0.12.x"},"gitHead":"0428dad65cf3b1b0d37b35bebc0510c1d6b3cfae","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.5":{"name":"citizen","version":"0.7.5","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"473274e87439b0afa1dc6247a71a1f72c62758de","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.5.tgz","integrity":"sha512-XjfcsVqYH/qN5dJRWuGrsTMxvLQyj9TqnHUsutijTK+027Ct90a4wpO2GN/BdYHgT1N2N0qLUM26TDMBMh0L+Q==","signatures":[{"sig":"MEYCIQDK3W/KThQJuAnac6GX1aYf/J+ixG0INcuNBu9Of8E8AgIhAOCdfzUmznjoAJIQ0rmRBo1sFwb8fCHKUgv760GNZgYS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"473274e87439b0afa1dc6247a71a1f72c62758de","engines":{"node":">= 0.12.x"},"gitHead":"0d086fa9b2a26fdb13c10d51bbff173a93a7e3e7","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.6":{"name":"citizen","version":"0.7.6","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"50edeacfa41a3a7fb8b7240f3fab4ac66e3c36a0","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.6.tgz","integrity":"sha512-16iVm5rj1eEnV3wF8CA3a1pVXj2cT03lycmLXK6lgkSAT7PnHs4j6hZkk1DVGEocD5gXUL/zU/7OLalQw6HobA==","signatures":[{"sig":"MEUCIQCni7sVEQF9USGhX1OGoS/8xY3F7jqY1AVDlnutuajkyQIgI46Hni+EUrSay4lqXMxiCzY0IdhejTbKe5pXY4aU9pA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"50edeacfa41a3a7fb8b7240f3fab4ac66e3c36a0","engines":{"node":">= 0.12.x"},"gitHead":"0b141053cf8e4df436042d7196b2e445e2ae6c1c","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.7":{"name":"citizen","version":"0.7.7","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c606ed0b54d208b6f830e2f1ea034ace22eedf5a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.7.tgz","integrity":"sha512-hwadYjNKNt4mSPE4cTKgdQU8NQQEjBpmj0Jj8iYym78Bsy7OG9DqYjOR6a4oKcZRUBfbd7dIUQFCJuOOI/VGgA==","signatures":[{"sig":"MEYCIQCUe2Rek10tKpMfhnlTIvwy6JYYNa3KCqZoVVknlS0cUQIhAN171ksazErFdP6NnLvBe3M4gmlFe3nDL6XN29TvjUHq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"c606ed0b54d208b6f830e2f1ea034ace22eedf5a","engines":{"node":">= 0.12.x"},"gitHead":"1f117b4f931f9b7c6e4c87e947bc4cd804b6e76b","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.8":{"name":"citizen","version":"0.7.8","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"b80f15a27c386c76d3ef96905b85e36193b6936a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.8.tgz","integrity":"sha512-ImsM4p7hDa67PmDDXH5ZtIKO21SDWKeVi0Vv9q1YWFXKRtDsLhxfFJNFXxcYDbs0G8L5/OU04IB7BonpTzn/kQ==","signatures":[{"sig":"MEUCIQDTd+rB6VrW1clbnkxUDFAzUR7/u1IiaYhIkbFrzTgNKQIgT85IOB/8MJa9X5S+yMkC2JlADILtiCq3RMxc89JUNTY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"b80f15a27c386c76d3ef96905b85e36193b6936a","engines":{"node":">= 0.12.x"},"gitHead":"8ca1a895e129636e086c128f33dfdb9a843a3046","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.13.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"3.2.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.9":{"name":"citizen","version":"0.7.9","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.9","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c3f4183ac8efa3683dd7324cf2179533c1d46541","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.9.tgz","integrity":"sha512-Hn6B71Tc94ll4ZlKY3YWHfpX6pF0qL3r8T6B+2NOIwSFloYhRfxv5Hm5qym9oJj8s5ZL3tjosfqxXNw/YPzCMw==","signatures":[{"sig":"MEUCIHC260NzsYiJfEvii8XOgr/rZwAnVwBoj6aErpu1qH9dAiEA6/5lQtCORr4/FXiw0DX8RompC4j332pp5dng+eomiHw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"c3f4183ac8efa3683dd7324cf2179533c1d46541","engines":{"node":">= 0.12.x"},"gitHead":"36c0dd58073e833d014d24b3452ecce007388dae","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.13.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"3.2.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.10":{"name":"citizen","version":"0.7.10","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.10","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"adaa1758c908c51df22bf0e182c00006af10e60a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.10.tgz","integrity":"sha512-DYQL/RhnA0uUu0JBMoeFVNKL115SC6EgYVE5nIGYZ8H5SCH8ThSR6Fvlu27nF5g/cMpgBxbCePudtHgwISkBSA==","signatures":[{"sig":"MEUCIEgd2B4C0J24Kxfs1YLQP+C51wdztkwM78OggJ22i/emAiEAkcgR2fThzpp+GQZKT0qSKJlHRrXZVT3R2OCxn7DgVCw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"adaa1758c908c51df22bf0e182c00006af10e60a","engines":{"node":">= 0.12.x"},"gitHead":"3284a07c7b7039594dc21c54b80a3b81d6f67c59","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.13.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"3.2.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.11":{"name":"citizen","version":"0.7.11","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.11","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"a12515a44b934e58882e051ec076c90502cccc2a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.11.tgz","integrity":"sha512-elcocDnk7AW06fvderG2V2ta6wUdfOqp5Tp2nBtAuEI+i/DvxHkOrYwwL5HSryvLZpu5bordcOGtxwb+NLqblQ==","signatures":[{"sig":"MEQCIFt1mHOGMT4DY9PAdUQgFuCayVyVvbHzT5Qlx0Bm/yAJAiBRizbLJ4XDTZDyv7pRvP2N9eslO1XViU1/+Vn3gTb2HA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"a12515a44b934e58882e051ec076c90502cccc2a","engines":{"node":">= 0.12.x"},"gitHead":"d4e6e203ba8a692f8b7d49713025218d731008f6","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.12":{"name":"citizen","version":"0.7.12","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.12","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"1acc554f05fda41a306083f08087bd6603ceda01","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.12.tgz","integrity":"sha512-wi8ANUsJLyY1djcGWya1ziTcKYzHWNbXzLIi3a1JvOtm81zn6kPLzMYzsXrgovzxbW4Ej2W7nfoVU37l6E8WpA==","signatures":[{"sig":"MEUCIBSdaun/o1zkth6SLTU7dHL6Yf624yUfNAFnAm6PVFKkAiEA2notuVc+Pf74vJvS4q3PwxHWseNlfkD/C9BZOTLaAuU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"1acc554f05fda41a306083f08087bd6603ceda01","engines":{"node":">= 0.12.x"},"gitHead":"ab930a822c8f674b71cc096ec54be22570c42205","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.13":{"name":"citizen","version":"0.7.13","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.13","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"cd46c6df566e57b78b8b0db21fd96473b1c41e39","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.13.tgz","integrity":"sha512-qujUzUb8gaVYazOcoiN7ea7Ae0/hkOosyaWix8/qQrWZyzsHqURuHdob2+Xq0oW+0pAQz+pw9bmlXpV/KwP5HQ==","signatures":[{"sig":"MEUCIQDBWjk6Eh5dR1WPdVv0xySgHKe03SS83uVXtJc+kq4pXwIgRheuJiKmkA7Us2a/fP0XmSl+E/O9122gGjfnfuMXcS8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"cd46c6df566e57b78b8b0db21fd96473b1c41e39","engines":{"node":">= 0.12.x"},"gitHead":"371ddf1e2b8864f5e2703cb31443c82d2cc17f83","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.14":{"name":"citizen","version":"0.7.14","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.14","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"a82205a0e0743c9e885f7b8d1f4dec8a4276bd98","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.14.tgz","integrity":"sha512-hFP7bQNnYJl3L241dzMhRoLxGoXaWwszJDSLK4R+JMB+jSyFsMIe51H3IWkNoFH2VG4L80o9tR5ecoNUkRAoSg==","signatures":[{"sig":"MEUCIQCdpIHXd6ykbSF93OYgHkzqqN3NYef/MSz9CEesfQBoUAIgLxjI94yEhz75n8RRbzWfXoTNPWfRKAD/L8jStZgoae4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"a82205a0e0743c9e885f7b8d1f4dec8a4276bd98","engines":{"node":">= 0.12.x"},"gitHead":"895e063e2c08e305c954359cda8ca4efb1cc1f4e","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.15":{"name":"citizen","version":"0.7.15","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.15","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"60f4d5aa00cae4ff1c2ee1d00bdbf53116a063d9","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.15.tgz","integrity":"sha512-QPvgluO6v4qj5acwyG6MMhz4qjaoQ4Y/I4YFqAzOudLOiY6byVr5VzjebpNZjuVcwEL+8OnreCSAON311tDGIQ==","signatures":[{"sig":"MEQCIHJJy8iy0aKWH+Y1VuMmbl+AujE+8h6o5hkR/DfuvacUAiAR7rzJ7QJHtzwC/sQSnjj2ZOLsiNTfjNIJxpjB9nqfbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"60f4d5aa00cae4ff1c2ee1d00bdbf53116a063d9","engines":{"node":">= 0.12.x"},"gitHead":"bb5a46e8ac85b035359f48954b1f3fe1450d1d6e","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"2.11.3","description":"A server-side MVC and caching framework for Node.js web applications.","directories":{},"_nodeVersion":"0.12.7","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"}},"0.7.16":{"name":"citizen","version":"0.7.16","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.16","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"259c360bce8d0851c784631be9ba4834bb815a75","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.16.tgz","integrity":"sha512-K6KwVpL1QGQsZIwtgOATiPtCfU16z57KIOBQo4MyFIeAiLtwyhb1KhHcoXyK3GThZi8/GbibKFAEtdlRY5wStg==","signatures":[{"sig":"MEUCIQDbjEvOna+GejXgssdUTf8CvOgU//Ewq2WUxOXq0gFuLgIga7vvuA/ng2YOrOKSXMypedULg7V2lhI/5KJqncNlsCw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"259c360bce8d0851c784631be9ba4834bb815a75","engines":{"node":">= 0.12.x"},"gitHead":"7ea39d1c36981c7662f0b9ed8302adeee1903080","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"4.1.2","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"7.5.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"},"_npmOperationalInternal":{"tmp":"tmp/citizen-0.7.16.tgz_1486854736359_0.38920531468465924","host":"packages-18-east.internal.npmjs.com"}},"0.7.17":{"name":"citizen","version":"0.7.17","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.17","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"4bb0ea60664fde059b3f51e4bd8dc303e0a33b3d","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.17.tgz","integrity":"sha512-Mk4kNf07cui9/sRE4H523bzxucR6ZuQe/oEdSRhQzqQfIfgXQYlqQSNPfuKyZR/DAdsDNvEpR6kLhiRnQ6nVrA==","signatures":[{"sig":"MEQCIEtMqR7fnRGvUCOw4D+l9bn9JWHLHpPNX4sAmnwl4zHfAiAqw2+P+ItuGAdxz9mNdoc/7ecvuCdjr2jCWyC3A0v6RQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"4bb0ea60664fde059b3f51e4bd8dc303e0a33b3d","engines":{"node":">= 0.12.x"},"gitHead":"1defd3898d6536d5eadbcffbc6d32c2a2f0aa805","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"4.1.2","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"7.5.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"},"_npmOperationalInternal":{"tmp":"tmp/citizen-0.7.17.tgz_1486855353236_0.8694002903066576","host":"packages-12-west.internal.npmjs.com"}},"0.7.18":{"name":"citizen","version":"0.7.18","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.18","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"4b43cf2696bdecd38b9068f1cbc9281cb37010b0","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.18.tgz","integrity":"sha512-hcYmMNWS/FGZ9gVTnx8mRrQA99ilnw5nDUX1YtAAMC+BQFhE1F6QJNpBRQ38jlkUvwa5G9tfMUv2hu0943JjnQ==","signatures":[{"sig":"MEQCIHdKYawniQZ0sIVQarhxnLg81Fk7jXuN66L29RICSBHNAiA2wNqz/RlOvVOq+q7NxbiLV39vsqV/5QQoT09pk7HXZA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","_from":".","_shasum":"4b43cf2696bdecd38b9068f1cbc9281cb37010b0","engines":{"node":">= 0.12.x"},"gitHead":"c550838fb6808098516dbe5a3621530cab1ecf8d","scripts":{},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"4.1.2","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"7.5.0","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"},"_npmOperationalInternal":{"tmp":"tmp/citizen-0.7.18.tgz_1486856526592_0.17374044144526124","host":"packages-18-east.internal.npmjs.com"}},"0.7.19":{"name":"citizen","version":"0.7.19","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.7.19","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d2b8de39501bb2c536a2db0778230eab32a1c93b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.7.19.tgz","integrity":"sha512-s3vPka73Sr+fDVNPMtBKZBc/tPptDxmVhi7gVrJ9zMtyvGhuhYqkO4Xf/Srj7f5WCWG/jBaVL0WHDGbqLkeqKw==","signatures":[{"sig":"MEUCIERQZN/5EpiKBgSeVAMHxTRa1r92lBnmhBZm/TiJndS2AiEAl+lfum+8wrHaFg5cRmZl1eLTm9JlM4yrpCnf4M6KBAI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/citizen.js","engines":{"node":">= 6.11.x"},"gitHead":"97ffc56458860fdd554864664aa104b56973c4ca","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.2.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.1.4","dependencies":{"jade":"~1.11.0","commander":"~2.8.1","formidable":"~1.0.17","handlebars":"~3.0.3"},"_npmOperationalInternal":{"tmp":"tmp/citizen-0.7.19.tgz_1500240558736_0.2508816812187433","host":"s3://npm-registry-packages"}},"0.8.0":{"name":"citizen","version":"0.8.0","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"eb968f840e0a4a11ba6800f23e65982165dd9944","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.0.tgz","fileCount":27,"integrity":"sha512-Qi/bjcq2YpEqmcaMguyFni8aj+SsI6tqn/doy1/L9XA0u19UFHnhVUiBoUjv2twv1bYYWfKUzjw4hL+5P4QdSA==","signatures":[{"sig":"MEYCIQDTKRsIqKM34vOYhZGYMwQSEkm6RGmxylQJVccRqGSGtwIhAImfrzvmCKtY7NXP1wh+ubScZjFq2NF2n/Gd7W/xi74Q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":306223},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"54f9cc4fa6058c84aa68106536205b59f3639d2c","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.0_1523113816262_0.744226604430652","host":"s3://npm-registry-packages"}},"0.8.1":{"name":"citizen","version":"0.8.1","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"9458a7d15f99925fdb1c26fd33c455e95e2d1ad7","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.1.tgz","fileCount":27,"integrity":"sha512-dd/WWhrQwohFHj+wy6VfRNycdYIEFG6k083DtsloYdcaAaEREho6bafe4n/uG7+E7VRvs0I3JkHPvaU3jKwiEw==","signatures":[{"sig":"MEUCIQCo6ss5PjFPF2K+aV7D+SFexJCvFW+30pw4NitWSlMguAIgWAngOk7FNQvrVLFZCRGJvGvUm1uLKiOiQEbfOM+lTyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":307101},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"00248f93bfd05970402e4799b02ce95c2d3780be","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.1_1523447742737_0.19544919622468182","host":"s3://npm-registry-packages"}},"0.8.2":{"name":"citizen","version":"0.8.2","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"a36147cc217421052be260517ae25103f500410e","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.2.tgz","fileCount":27,"integrity":"sha512-q3PJ0T1xi8LRoizZul9DHxPwqIHL8N6qJxYs0bxhedgiFsA9oy3VIIF5zeIN3TTmCXgYqyG58xuytcTxeBKnhQ==","signatures":[{"sig":"MEQCIAKYcrSZzSHu/8jyqMMTDfieVY+Z+nkrpWw4p6kBr1AwAiAtwgnAatRHIGQ2BchLjL0txYnjg/wijHWCKn/ppaesLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":307181},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"80a8e933a9bd6fa79d022a74da949c7d14a0b2e5","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.2_1523519606095_0.6897176893326034","host":"s3://npm-registry-packages"}},"0.8.3":{"name":"citizen","version":"0.8.3","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.3","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"bae6d60dc82ab66d9435570ba2ec12631cb0869e","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.3.tgz","fileCount":27,"integrity":"sha512-Uk8HKBeBJ/gIg+8X36H/VBFRXkXQfsYQxS/8dFs+zZ1IPW6ACLEcrR6y6tzM/MyXkmZc76HfjY22/bvWO6dMhA==","signatures":[{"sig":"MEYCIQDXVeaEupUX+8gtdq38kEHALfO5Sa8BSrFvFQOm0Lx8NAIhAMvUTOobgqQVoO/eGT5p/EklG6I8eFLn2aW80fD/xySa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":307268},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"715ff397f80caf5456e74b5ead3ebfce7c05960d","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.3_1523523938998_0.2651516906144442","host":"s3://npm-registry-packages"}},"0.8.4":{"name":"citizen","version":"0.8.4","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.4","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"77c292afaa6ec490241e93812bd89f49ecfaca82","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.4.tgz","fileCount":27,"integrity":"sha512-+o1TGHKwhO9cszW9DJPSCPToMcjgTb2wXJstlOXSB8JfDIfikwHmnJHujb5fdOoSERv7fvtwqk/ZumcE5Z/fTQ==","signatures":[{"sig":"MEYCIQD1qSMgIsxLrkYk2EModTXMNjtcyer2o+TDw/jyYxM5hgIhAONXcz6ev45AZB7moq+Q8hZA5Wroml35U/BIdSBTe5yw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":307510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa0/itCRA9TVsSAnZWagAApNkP/1BGldONjxJpFmUpAsNn\ntJjqdc08gOVBB0p5DUtGumzaKvTkyppW4o/rkkIBq+jqBIK0sTtftIfOay5F\nNhX+2cO/fCxxL48BTmPyxPzT4YwAwRQAyQMGUyGMjUp//AP6HIwyPx/sc6AL\n2STBaKj1KjjCSL3lhzT3Y/9hgLgvObqoW7TDsIZm5stGpOxO3bg8uisVAtqr\n3f7krGu0CI8h7C05KzEWrQt2vvwkn4myF+WgsVvTAwMYqxMSZf0OCTku7GVI\nsCEtgksKhffabZfu6rdk++KmK/wYNCFslFT6vE5zXZoWaIr1TBgq/vZO6o31\ncwccgfK/Vc+f5VTcUWCi7YZvHlGJm5EJSDfFDKeX7OsmqlcmUQ05zyM0X/vM\neaUgsUryz9ExASsXfukfj0Pv+Kl5+EL4+Bp2Jpt/iSUymBSLbLGA5NA7/gvH\nQt8SJbVLtmj1jNaysXbCmRCAQQSffQisWquCRpemGzNim3MMhcQMWCmkkPej\nB6d0fw44UTW0PcW6wbUKF3gm+aD3fPp6HhL/uEJdToaeoO5saJeU9rXi5/Tf\nLKhnKcHUQfM65VFlMM5DUDV794Fx5xJ55JEwc2fZD7cRGe+4l8wE0udQQHcu\n/DM+XPNEu2IgaU3j/kF0FBYB4h/hVAAKbzsWzkdvUwxgeRD6XolY3sn4ONes\nEJLB\r\n=jhU2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"25f009455ee6d5f553a0add221783f28b0f5ed71","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.4_1523841194545_0.5990297917790657","host":"s3://npm-registry-packages"}},"0.8.5":{"name":"citizen","version":"0.8.5","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.5","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"64fd3e44337383a8fc63bd46d5a0e3b6888b69ed","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.5.tgz","fileCount":27,"integrity":"sha512-0iIMrCf+PnYQktYwNQaXuI3Wd2V4Hl5Z9FgRbXx4Jc5ekEVuTlEjudmVNhTrRKdu0o8p7nzOVRCBcdwnd72MEw==","signatures":[{"sig":"MEYCIQDuZU2pIOEZ33i5rM7kk5ORMREosTXduKwXUpMvNal6AQIhAIePVgruT3TN2PIrW2UlLKc6LEtcvz5E9ZJ4z6y2xYnT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":309594,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa78KcCRA9TVsSAnZWagAAZ6sP/RZBzzyXG7V9Mh6loDIl\nyCpCmaE4NkUZR7dm39me6yYSmceV3X9YJ6P6BKeWdLndnPboLuGF7UPPoQ5h\n6MYaqFqLj45xlXmimfRW4wTAayG4VuzZcLA+b0LeQMCYMJ5YCmQGwWipTILk\nc4zJrjtKvc3UAXCHpkOdbKNWYRLHLTduuaPFdf09RQpt/HQAiyw4/PviH7EI\nfUCEr5bCzPDxHuHANUN/rsyBtxqrWYiJoP69poeseglOLnLlvhXZonx6Ve5v\nxyQ289sdY8DxdJse8dm5h2Fbv10G8Eq/zNCmQy71tI/0xHmb+/esosVnl8Z2\ns1QTj6b8VNa5oYB/JZWHpe0yFEDqOcob+gjiv3GsloKDupdbezUQ3d4ebBGo\nQTuGbWtYhUy5vUOcjtMI3O5oAsidwX6WK0dGW9aFXYz5919s/K4obLU0+awS\nusG57S7uQSnmyCYG1NS+Ng8ziL3FwfquoDbEimkIzuv6QM2iU6Nkqif87B3o\nEC9rlA8gocbu2lvnnO7IoYb9+YqEvxCUnlm3egBjdJjvjdGVe0ufhhLAQ3Gj\ntO9t98f4FbbAKDGobWOvswHLdzciYbxWQyCMTqoSr4q9wEoSZIryiDxyktjL\nSVhENMqsXmGOEaMlC+WDoYOTE2wVZRDPMDpolFNxfk5GmZ3JJsOe+aIm6mBr\nPPQ/\r\n=LTyH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"bfc5ffb2deb41eaf9516d6ce4bdbc5a217f4e944","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"5.8.0","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.5_1525662361819_0.38902669042738736","host":"s3://npm-registry-packages"}},"0.8.6":{"name":"citizen","version":"0.8.6","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.6","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"d563fc53d04a49cf02f3786f18f7b059a023761b","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.6.tgz","fileCount":27,"integrity":"sha512-/JrqMjM/7iRoF2HdJNYD7y9EYwknLfg5UN9d2+ekEBgi9KXQWhdHyEdNjHWmLdE8aalZt0qP6FwsU0/W0+3ufQ==","signatures":[{"sig":"MEQCIH439n2RgdSs8/9tBDR+NqK/R9/QPLah31+wQVMMK8wJAiAXC679iUKo4XwrZBgWR5qFm0zG+2rI1k315ot1jo2e5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":310348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/0rACRA9TVsSAnZWagAA+UwP+wapl6j3z/zU4uX32/1+\nGPxgX4adIf5n3nSpa9aum7GCoHXJxnOWxtpEE5ERyf6PIQ7A2q6JBUnJyTD3\nNHS6FFo4vpFLy5GwjEykfKrCRGnvp6amfmgmBgaBzIlZ5mPK47qJw9KINirK\nIEY3TjN3YHksLZ+5hgh8nC7hwshjSaRcnUE9A1Y1a9aury3QpqPjlSUT9md3\nsHE2yyBTRoZhKcEpnClCmZEpHrEVgQ2QPdbBrg8x2u07Jdk1Fc19HMHeSxAC\nZhAxrk4ytKI9XSpW785WeuUhRuQZMTurHRuaZ8/mfIrAfUWTgNb1AE0KEQjK\nRoeTZ8zI4RDL7RwzaQK8o/zCgsTVyaNFofR8B1ZTijB7VG1t3Xa9AwqIkyPs\nZD6dBasaPpba0XicHNPqpEz9fbbTz4sh0HwngHygz0IuRhXU4/omsKJpR9Hr\n/wh77CtiO4uLuaC+f0ZugRoa7hER6xcD5ZP2DUgbtd7rvfvV1uxxFULlNxwr\nCXOQRGWxmlmCmmU33u5Enh0p2zyz+5dmWa6P3bGoCKh91+QQang72IJ6I4Fh\nXP/xpVzY7akgmgewgHkVLZLW1OCozI/NWc809+1traiqMowVBcDFWNTYfDE3\nv1cZvZs/97XhJCpYtIp6GxVWy+WWDBJTLywIggtKymcnFnhuvq+ccm743JNu\nW+9t\r\n=VnHT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=6.x"},"gitHead":"624be150d3467becde69ebf8c0bddf64de6f9159","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"6.0.1","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.6_1526680253702_0.3855883191923133","host":"s3://npm-registry-packages"}},"0.8.7":{"name":"citizen","version":"0.8.7","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.7","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"3ff5d93bd237bc802264062bf2f2bde544860d19","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.7.tgz","fileCount":27,"integrity":"sha512-oBwfqoENgjkyTHBMlKDK91wKxHjEdxiKfIh7xUZXPB6pC4nozJfb7LzlaxGzZq3PO1mZCmLtqDnUcDmakKMhEQ==","signatures":[{"sig":"MEUCIQD4KET8mwRAIt21U5/xKiCxSP1WQEkW3QGbSJftdz7XVAIgPQoVlj7/xeqw3bHAwzQ5kEvsgJelzlYeJo9JqL3hSc4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":310455,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1b4LCRA9TVsSAnZWagAA3LkP/2UHZEDooOfGY5+hMAiP\nvfzHtNq63zZ3gx9JzUAZbkvt+YjY5DEBeV3A4Ru82cd7QUhIqE/swj6DvLqS\n/NsDzcxR4we+8AwlfEq9mSF/HSD/jbzkPJneiYjknxbmtlu1M3jW9bh6HxgB\nOKtCcFhFZwI/hai9SlsA4Me6QoZ/4FnAZV+7uKbuWGiYe5gQ+EpgTymEAqV9\nY3EnunbyLe4uyQ5hi1elQ0XZ3B183WqRk/md4xg6I9ZjKXe1X/Gtv05hfFGC\nZWOPBnLp7WCoDzgaG00DoJKHQeDw3mk8geO4LMuqaMD3hWwUaxESdibrQmVM\nSTTv9tZST1TZibUyhL1GMSlqiBS/sWb8ojzN0IwSi2dzg59kYnivvWqNLqKU\n756okOK2/1BKSNc8U9BW8JkKV15628cZBrpGEE8OUCNJBCdI0BefP8dZhG6j\nB52ueiCdjyC1GmkNFmUAofO2YfZOA9Fsl8PS8lW3BTPE9galxGIX1jtaHbr8\nBf7QXbdPvkwrw8iCd4I7Hm01eMTpXrLtgpof25pU77i+XWCbZVTWUVJo70k5\nfyRMrAdkAdaW7L8DkZY6sIrhgEwpfOo0HUjJP0X+W3osIpEqZm9Kb7H5Cb7Z\nwtPnKBESdUobv3AP/wMb1Ow0WSQjl/Xj5485lkfoMeWySCz5zjQZHLOr/CVz\n4c9J\r\n=+E3M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=8.x"},"gitHead":"f08e572081e3a14778d11d4e31b4d03be9116cde","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"6.0.1","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.7_1540734474292_0.3594976286217233","host":"s3://npm-registry-packages"}},"0.8.8":{"name":"citizen","version":"0.8.8","keywords":["citizen","mvc","server side","server-side","cache","caching","router","routing","view rendering","framework","web server","gzip"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.8.8","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"0799713cd3d960b18148ef3c02c98ed367c75865","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.8.8.tgz","fileCount":27,"integrity":"sha512-n1DFEYCaId1nKsMiaiuAMMWfSSYri16gav8E8dO0UwZ2jPGGhtAJYDT2/voPBsCoOlkB1gw5bYM2aPYqugfYeQ==","signatures":[{"sig":"MEYCIQClMOFc/fCMOlNZRRmQhxXxdXqY7SDSVGA9cV6Y+6vQEwIhAMfZFXheBJPwM3R25lHfUuZyVR9fSU3lZQfVrp0/Zcxy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":310604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1cKlCRA9TVsSAnZWagAAhMUP/0elP2vrNoZMgktTN5zS\n/0gh0CP9wsTCmKuYEAgpVMMpKZh6MlHMJOJQAGyyiSrToZBOoy3oD7qA1mPK\n1OJhgqLOE5s3DCqm6QRY6gpnVd1XKNN8gwQH262IF46eH6QhoC+cB334Dvcv\nGCYt9LFZF+/99EruOsaoexRqHJGqB2OWCL1i4kcCjRBuHRrfz9z5gWtxSgcD\nkdTOjGpUQSSswcngmOxBIY+J+C2uNyO4ypAUde01chB1DCzL+yvsaZ/yb8bO\nH1elcveujupFQAveWVNkXcH1bExjyYwekAaDs8tvFAKM1/n0xdgwpZHX2iUO\nNju8RIQlySxvpvy9tQJEr+4YGzk+uELz05bXHMW4AOAdnF6kXBqEKHloerXU\n1MbBhAkhW1mhYj0uQxPs1sqyk35FunEd2dCgd6e+VW7PDkgMAED6TXuF+UCv\nXw3jmoAJS3q6U17fpkk0KxuVWHuDtv8tnH+fKJ6TUTZRa05PWfkMhemS1j1w\npMmDRO7TlHhFGv3nzpjyA030yAMK9iqxQvHHDM1Y8mT9rvlfonWDYR4I3KmU\nw+slMXQFNiq9Lo1wJhuzqFufdTo6L+4vuEKVhx07JI0m2t0SuxF3xLp4QMgx\nAfprJ1buGrGTPH59wp2Jw0Fgg9AwoV8sht+JT/IMr16yHlAgppnHflP0t4MR\nOZGa\r\n=u9HQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=8.x"},"gitHead":"c694bcfe0a8cb8d08c473f1d67a0c0e796cbc7e5","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"6.0.1","description":"A server-side MVC framework for Node.js web applications. Includes serving, caching, and other helpful methods.","directories":{},"_nodeVersion":"8.11.0","dependencies":{"commander":"2.15.x","formidable":"1.2.x","handlebars":"4.0.x","consolidate":"0.15.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.8.8_1540735652439_0.6757471287094612","host":"s3://npm-registry-packages"}},"0.9.0":{"name":"citizen","version":"0.9.0","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"url":"http://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.9.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"25e8e7e03bd4904fb2b86ff68331622c704f88fa","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.9.0.tgz","fileCount":26,"integrity":"sha512-8pQuFleP5nq0AS9Z6kzIo/1xlx6O8yrxR0gnW98AaVtxQ4tvK3mOc1nQMwh8rPhSB2T+kCL+1HxaBXGxCUVwgg==","signatures":[{"sig":"MEUCIQDuUtyYMjNLDHS4sEvVA9GkQQ5RCoImqknvApt7ipMoQQIgJQrfjcVS4Yiu9Z1M84cYednh9TSwwP5XY3kWMp9+4Hc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":287610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdl6HBCRA9TVsSAnZWagAAwEkP/jFZNwuQmp0jY9s12alg\nWFogx64mgs6kFScv7i9m5MWuJKx+yEvZiTddSUv8R+Seno/fd1fXsp87txzq\nvOLgyNl8Is2ERtcPWdNl4rvb8g1I3+lKIh/9WtsXmwZlm4MNMrDGshG/9y9Y\nd10CAtPAwjNfnZHX2KGA/PyNp44xgvxVD4zCUt1n7RGtkKQJ36tzYfIrQCia\nOq7qWVVYVrdTjn9GKnm8KsH7koYVYhAbGOSv/cUBaF46a5QmwFuFniEPcRsO\nR//oUwT6FvlBQraFepMW4lx2UqZZitIBUSaN7R3FijdtovPId5cYcvipPDSS\n2DHZwRtTk9Og27SjH5OmBPm55R1NJhJwoMn4zk4KRSTAIIE1v85BczkJIZDW\n71mD8HvWfjmLmEaAcqGDppAnpKMd57WJmCvRmJe0JKX4CgBLCS+fHYCAJvPN\n7bKACET9/RQA66Yzy+o/AXtxnmIWFxB5MS4BsPGNOnEI1cpU6qdkaGWlfwMy\nynDkg2aojdQzVnzwByqB3xNfu3CsaDrU8LcKWWJFB3Vqc4V0ZjuJbXQVWgUA\nohB0W2PfsxaAG03fFkjkr5mreflHAD+iAUhzKOPCBScdlkGeYhqc88p6X4oK\ndFyeoiae7PLu2HitHwM7cv1/hz/NXgD69AzqAlsCGcHlNATe5p5HubI9VT/Q\nQKsJ\r\n=o+fR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=8.x"},"gitHead":"e596f284a226f04f9433e3784250c620cb891b28","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"6.11.3","description":"An MVC-based web application framework. Includes routing, serving, caching, and other helpful tools.","directories":{},"_nodeVersion":"10.16.3","dependencies":{"chokidar":"^3.0.x","formidable":"^1.2.x","handlebars":"^4.2.x","consolidate":"^0.15.x"},"_hasShrinkwrap":false,"devDependencies":{"commander":"^2.19.x"},"_npmOperationalInternal":{"tmp":"tmp/citizen_0.9.0_1570218431886_0.9516710305680476","host":"s3://npm-registry-packages"}},"0.9.1":{"name":"citizen","version":"0.9.1","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"url":"https://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.9.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"0f26c831636155d95fe180d219b1f5476ac8d41a","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.9.1.tgz","fileCount":26,"integrity":"sha512-F9prv+FknwOfzjLibj1eu31xWUh0/1kyhzBrrlgTlz9DHszhDqSBo9GzYoCZF4nUTR+O10p00BwRULTbIujYEA==","signatures":[{"sig":"MEYCIQDlKC33Dy5BIoOG0glpHTo8rbHV17cci+cHeddpqO6CowIhAOTAZSD/QSkRMGLzS5y9pbuG8nGIwwMETvg7D8lg6tnQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":288512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPtSDCRA9TVsSAnZWagAA7zwQAIbt0hrzWKU/2UANqOgA\nBRccL6S3UKW6oDOCaua2Lz90EWLI1qe6OAzSXyKqywtNb8vtouMGOAwbKdnI\nSnCYo7BqX3Ih1h/TRNfCnefGhpNPPxqD6x0J+sUt02S9GSlUfiVoM9u06Zz3\nvegtWdQOB9AgGwNdyu0PlaJJ4fmtjdxN+x/XCeBQ4x/ffLq34cSiyTpAVZLJ\nrgewcaaaB4uj1EoKaW+iANDI7RfKd5Q0CpmXoMWxrPSE6hkpazGZ933dGIzR\nTLocKhDgYZtOLRQLK4Dsgk41+5QwdWLjI2bDDkWK0By5sWw1J+/6mZOr+G0E\nIi2ZqiRaOKhBAk55l7kc/nPV62I1va1GaL2Hu5/NAHPVRNgCflCAhahbP0Cu\n/RjGxvR52V4kFfqNhLyNrs2vu7hZ5y2fScZ+mb6rVz+Nl8Tre4XMG4fRWymY\n31yeZ5IOyz4LZj3yON4noaCk5NZGB4Jm2QiaD8BYHsUiGsabuYdMzHTgSJUe\nmS4ABaKAgPCGElkmxtSmybmRyjDf/n9R1Q98Yu8NugxwjwKsFfJ7Qb1bSp2q\nSLYtb+LQr88pEqzxQT8XRSIWGmJRv2h7QtK/JUPw5eyID+ohksx1QWZJ63+k\noSOl1FJVLzKOLbl36KTwCO5B/mUj58Casowf0sOe+UmzG7AoGr6JmmISpL8j\nhLBf\r\n=lTDh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=12.9.x"},"gitHead":"f81ae2e653f8821e5168b44495d18896330349e2","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"7.5.4","description":"An MVC-based web application framework. Includes routing, serving, caching, and other helpful tools.","directories":{},"_nodeVersion":"14.15.4","dependencies":{"chokidar":"^3.4.x","formidable":"^1.2.x","handlebars":"^4.7.x","consolidate":"^0.16.x"},"_hasShrinkwrap":false,"devDependencies":{"commander":"^6.2.x"},"_npmOperationalInternal":{"tmp":"tmp/citizen_0.9.1_1614730370606_0.32232301021520415","host":"s3://npm-registry-packages"}},"0.9.2":{"name":"citizen","version":"0.9.2","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"url":"https://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@0.9.2","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"864a3992b82eab4e4e1bc6470f03ae8dfe45dd86","tarball":"https://registry.npmjs.org/citizen/-/citizen-0.9.2.tgz","fileCount":26,"integrity":"sha512-TDQXYs+VLLLpuqZ8VbMMoSJldZSa6KemBtOnZXzejlQltwoNLtIr2dZNubyWgJ7sccYq+JZMDd6A0oLuk3MjIw==","signatures":[{"sig":"MEYCIQCMQmf/7QeCYpID+yhn2lfu8jvsFki6B+XJi4KgMbN77gIhAKsTCpsWcKtd1DofpXEfMPw+Ts8qAIatoCDol3wIeAJx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":288530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJga7rKCRA9TVsSAnZWagAAP+kP/AunJ6LS03wFTugdU+Ta\n+1zQM3Hq6LPOQsggMi//jbuffMwsAy9zt5b0dmAzfDRM1CJEF8p8LVZYIKQ2\nDZfA0aJ9j1Vu0lz0SVtQFu7f8zvzc3Q8MHIGsQ02Wmqmf+hc+wU3Ioq21u3X\nieRs1CiJyV/j2PqSxh0J9ka3/Gcoon86SUZlNluzkhsPTs2fYOrY5OW47Hnw\nMk71/W2mNzagQlfC3izkGogpRzmNiLYqYtxi2H8Dz8f3hYyttwgVcNI/WhgW\nSVEt6/ST+rftEzm1cU1Nh1rNvVDtieVMTrv8e3EucQIh4aDh28L8hb7NBubU\nv4G+16i8iJ//Awjz7aAfljeSc7lvlXYY8jUVmqRWDkP35PhcTsEEV2ifxf0/\nr9I4KCy0SNzUZ5llmLSfHmUI9n4GfyrzuMPwQMaXrN/bedjERcNA6/cKAzIo\n6zYUVZaJHW97W5r8DqmGHFxdbGtR+X7Pvtm71of+K6uOpMPOZyBgPdwzcU57\nuzOvdMRnwgQjE9Qt5iE3jay9SQmlVqbyB2h2op4L9g49WGBLhgTZRtoE8I1U\nXsmpH0cbTKcfvMZfTqPfdgb7Ws+LxYPwoy48fhbRnNbdpZot4o+508AP2bWd\n0Rh3BOR89gKdp02ct9oFScYguOB9DGWdATXihUtvfm0wiEwM7crz57BRA1qb\nO5dE\r\n=r5p5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/citizen.js","engines":{"node":">=12.9.x"},"gitHead":"8528a4c20075c2539125de065e94e2a09af2ea14","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"7.7.0","description":"An MVC-based web application framework. Includes routing, serving, caching, and other helpful tools.","directories":{},"_nodeVersion":"14.16.0","dependencies":{"chokidar":"^3.4.x","commander":"^7.2.x","formidable":"^1.2.x","handlebars":"^4.7.x","consolidate":"^0.16.x"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/citizen_0.9.2_1617672906243_0.618941798917426","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"citizen","version":"1.0.0","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"url":"https://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@1.0.0","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"ecdf5322402c722a2990aecaa43f12de1dae18a8","tarball":"https://registry.npmjs.org/citizen/-/citizen-1.0.0.tgz","fileCount":33,"integrity":"sha512-wA/C22WgNMaRpIeFEwKXqFekbbzUSlcyE5ZCXqesBkBqWd7+f9TfDBrgRA4zGr1U8gjmc9QOh7UMIsy0J0eKCQ==","signatures":[{"sig":"MEUCIQCWNVM4AI6io2dafAGYhCXi6LGUxzvMNfNHLfICXbMORgIgWzJS6eCdJ41qCZWbZG7/4q1BfVPB3aTsozQbzhRKBwY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":283873},"main":"./index.js","type":"module","engines":{"node":">=16.0.0"},"gitHead":"f8a48a536757c6ef89f373270c58844555e92e93","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"10.8.1","description":"Node.js MVC web application framework. Includes routing, serving, caching, session management, and other helpful tools.","directories":{},"_nodeVersion":"20.15.0","dependencies":{"chokidar":"^3.6.x","commander":"^12.0.x"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","globals":"^15.0.0","@eslint/js":"^9.0.0"},"_npmOperationalInternal":{"tmp":"tmp/citizen_1.0.0_1721636118290_0.13062979226753213","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"citizen","version":"1.0.1","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"url":"https://jaysylvester.com","name":"Jay Sylvester","email":"jay@jaysylvester.com"},"license":"MIT","_id":"citizen@1.0.1","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"homepage":"https://github.com/jaysylvester/citizen#readme","bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"dist":{"shasum":"c36f66e811c5cbcc932189a954c4c0ff3a41537e","tarball":"https://registry.npmjs.org/citizen/-/citizen-1.0.1.tgz","fileCount":33,"integrity":"sha512-wn2SDFyd6SXIPcX8rQv86ukyrC9egaGDWqWnVFyYQX6TXh4pWDsAZeQ0c0iJVxIeaGLuB1gmQ0UKV0TEbpYntA==","signatures":[{"sig":"MEUCIQCEiTgLzlz9hOTbppCYsqC37X3G91Raxxh+h8K7CcFltQIgVvX1CxyDcjFUGDIKL8dblQjHSSL79slK0vKReh6FyEs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":283754},"main":"./index.js","type":"module","engines":{"node":">=16.0.0"},"gitHead":"4d2d38b3a939e99bdbff1e77b4a218d1ca5df193","_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"repository":{"url":"git+https://github.com/jaysylvester/citizen.git","type":"git"},"_npmVersion":"10.8.1","description":"Node.js MVC web application framework. Includes routing, serving, caching, session management, and other helpful tools.","directories":{},"_nodeVersion":"20.15.0","dependencies":{"chokidar":"^3.6.x","commander":"^12.0.x"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","globals":"^15.0.0","@eslint/js":"^9.0.0"},"_npmOperationalInternal":{"tmp":"tmp/citizen_1.0.1_1721979601254_0.6364116448639634","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"citizen","version":"1.0.2","description":"Node.js MVC web application framework. Includes routing, serving, caching, session management, and other helpful tools.","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"author":{"name":"Jay Sylvester","email":"jay@jaysylvester.com","url":"https://jaysylvester.com"},"repository":{"type":"git","url":"git+https://github.com/jaysylvester/citizen.git"},"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"main":"./index.js","type":"module","dependencies":{"chokidar":"^3.6.x","commander":"^12.0.x"},"devDependencies":{"@eslint/js":"^9.0.0","eslint":"^9.0.0","globals":"^15.0.0"},"engines":{"node":">=16.0.0"},"license":"MIT","_id":"citizen@1.0.2","gitHead":"a8a3547ab0b3464e680e37b910e620a12585f6ec","homepage":"https://github.com/jaysylvester/citizen#readme","_nodeVersion":"20.15.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-XDRil87BT8vjltRNofUdJhSb8zqzsFoeRscyccrn2TD43pGWM4AhoJ5lMnz52iB2QcBZhxeZucJuoWGPpXWuLQ==","shasum":"4908947ee3104271965f0308236508fa46262c0f","tarball":"https://registry.npmjs.org/citizen/-/citizen-1.0.2.tgz","fileCount":33,"unpackedSize":280187,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGhs66oJjoJg8skIN22fAI5iYG7mkqjBLBSjIZtEJLpXAiAHzJz0NeBvdJp1J/geYRHORghq522kN18sYyeJumT6hA=="}]},"_npmUser":{"name":"jaysylvester","email":"jay@jaysylvester.com"},"directories":{},"maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/citizen_1.0.2_1738966588608_0.8675962831880628"},"_hasShrinkwrap":false}},"time":{"created":"2013-11-05T06:06:32.736Z","modified":"2025-02-07T22:16:29.064Z","0.0.1":"2013-11-05T06:06:34.294Z","0.0.2":"2013-11-10T03:12:45.405Z","0.0.3":"2013-11-11T06:18:11.091Z","0.0.4":"2013-11-20T04:40:13.159Z","0.0.5":"2013-11-24T16:36:27.287Z","0.0.6":"2014-01-05T02:56:51.073Z","0.0.7":"2014-01-07T05:47:32.883Z","0.0.9":"2014-01-26T22:26:25.760Z","0.0.10":"2014-01-26T23:51:46.723Z","0.0.11":"2014-02-02T08:32:01.723Z","0.0.13":"2014-03-29T23:17:30.996Z","0.0.14":"2014-03-29T23:34:17.049Z","0.0.15":"2014-04-06T06:34:12.242Z","0.0.16":"2014-04-06T06:52:13.518Z","0.0.17":"2014-04-06T10:28:01.544Z","0.0.18":"2014-04-06T21:41:20.567Z","0.0.19":"2014-04-06T22:31:17.345Z","0.0.20":"2014-04-15T01:07:31.592Z","0.0.21":"2014-08-24T00:42:42.363Z","0.0.22":"2014-08-24T00:51:20.133Z","0.0.23":"2014-08-29T04:34:27.385Z","0.1.0":"2014-10-04T08:36:25.058Z","0.1.1":"2014-10-04T09:09:36.467Z","0.1.2":"2014-10-04T18:57:32.544Z","0.1.3":"2014-10-04T21:35:33.599Z","0.1.4":"2014-10-05T00:01:11.417Z","0.1.5":"2014-10-05T10:07:28.667Z","0.1.6":"2014-10-05T10:47:36.555Z","0.1.7":"2014-10-06T03:17:19.783Z","0.1.8":"2014-10-06T04:20:51.222Z","0.1.9":"2014-10-06T08:34:56.393Z","0.1.10":"2014-10-08T00:12:30.506Z","0.1.11":"2014-10-09T09:08:27.879Z","0.1.12":"2014-10-09T09:13:00.707Z","0.1.13":"2014-10-09T21:09:12.862Z","0.1.14":"2014-10-10T06:44:02.017Z","0.1.15":"2014-10-10T07:05:09.726Z","0.1.16":"2014-10-26T21:31:09.293Z","0.1.17":"2014-10-26T22:03:18.515Z","0.1.18":"2014-10-27T02:21:50.930Z","0.1.19":"2014-10-27T18:50:54.403Z","0.1.20":"2014-11-01T08:59:38.641Z","0.1.21":"2014-11-03T22:26:37.194Z","0.2.0":"2014-12-17T20:52:31.509Z","0.2.1":"2014-12-18T06:31:38.454Z","0.2.2":"2014-12-28T06:23:03.117Z","0.2.3":"2014-12-29T20:27:49.001Z","0.2.4":"2015-01-02T00:16:06.109Z","0.2.5":"2015-01-09T06:14:42.052Z","0.2.6":"2015-01-15T01:59:48.332Z","0.2.7":"2015-01-15T02:18:49.834Z","0.2.8":"2015-01-17T21:46:19.125Z","0.2.9":"2015-01-20T04:40:37.518Z","0.2.10":"2015-01-20T06:30:08.032Z","0.2.11":"2015-01-24T02:55:02.177Z","0.2.12":"2015-01-25T20:52:31.955Z","0.2.13":"2015-01-25T21:09:28.020Z","0.2.14":"2015-01-26T00:30:38.381Z","0.3.0":"2015-02-05T07:35:11.923Z","0.3.1":"2015-02-05T09:59:33.882Z","0.3.2":"2015-02-07T12:23:48.283Z","0.3.3":"2015-02-07T12:43:19.368Z","0.3.4":"2015-02-09T00:34:43.471Z","0.3.5":"2015-02-09T00:56:02.274Z","0.3.6":"2015-02-09T01:06:34.403Z","0.3.7":"2015-02-09T21:40:58.771Z","0.3.8":"2015-02-10T04:19:42.116Z","0.4.0":"2015-02-12T08:49:44.360Z","0.4.1":"2015-02-12T09:08:36.372Z","0.5.0":"2015-02-16T04:15:15.244Z","0.5.1":"2015-02-16T04:25:40.127Z","0.5.2":"2015-02-16T12:49:45.564Z","0.5.3":"2015-02-16T22:05:55.363Z","0.5.4":"2015-02-17T03:43:07.895Z","0.5.5":"2015-02-17T04:25:11.818Z","0.5.6":"2015-02-18T10:44:36.783Z","0.5.7":"2015-02-19T00:22:03.587Z","0.5.8":"2015-02-20T22:35:50.827Z","0.5.9":"2015-02-27T08:43:31.291Z","0.5.10":"2015-02-28T04:08:07.186Z","0.6.0":"2015-03-04T11:20:33.881Z","0.6.1":"2015-03-05T11:28:40.460Z","0.6.2":"2015-03-05T22:46:55.129Z","0.6.3":"2015-03-05T22:51:59.434Z","0.6.4":"2015-03-09T07:23:49.030Z","0.6.5":"2015-03-12T20:47:33.561Z","0.6.6":"2015-03-15T23:36:32.956Z","0.6.7":"2015-03-18T19:34:21.755Z","0.6.8":"2015-04-18T17:51:31.261Z","0.6.9":"2015-04-18T22:08:03.850Z","0.7.0":"2015-08-07T22:25:13.419Z","0.7.1":"2015-08-08T00:51:53.974Z","0.7.2":"2015-08-08T01:05:00.424Z","0.7.3":"2015-08-09T09:35:10.206Z","0.7.4":"2015-08-12T09:03:45.826Z","0.7.5":"2015-08-14T08:36:07.325Z","0.7.6":"2015-08-14T22:15:21.811Z","0.7.7":"2015-08-21T07:09:41.905Z","0.7.8":"2015-08-26T02:41:09.081Z","0.7.9":"2015-08-27T07:48:30.959Z","0.7.10":"2015-08-27T10:23:34.674Z","0.7.11":"2015-08-31T19:29:34.460Z","0.7.12":"2015-08-31T20:00:45.287Z","0.7.13":"2015-10-11T21:23:15.813Z","0.7.14":"2015-11-07T01:59:28.319Z","0.7.15":"2015-11-07T16:20:46.065Z","0.7.16":"2017-02-11T23:12:17.289Z","0.7.17":"2017-02-11T23:22:35.508Z","0.7.18":"2017-02-11T23:42:07.507Z","0.7.19":"2017-07-16T21:29:20.215Z","0.8.0":"2018-04-07T15:10:16.393Z","0.8.1":"2018-04-11T11:55:42.822Z","0.8.2":"2018-04-12T07:53:26.213Z","0.8.3":"2018-04-12T09:05:39.081Z","0.8.4":"2018-04-16T01:13:14.642Z","0.8.5":"2018-05-07T03:06:01.940Z","0.8.6":"2018-05-18T21:50:53.756Z","0.8.7":"2018-10-28T13:47:54.444Z","0.8.8":"2018-10-28T14:07:32.615Z","0.9.0":"2019-10-04T19:47:12.080Z","0.9.1":"2021-03-03T00:12:50.794Z","0.9.2":"2021-04-06T01:35:06.399Z","1.0.0":"2024-07-22T08:15:18.463Z","1.0.1":"2024-07-26T07:40:01.480Z","1.0.2":"2025-02-07T22:16:28.900Z"},"bugs":{"url":"https://github.com/jaysylvester/citizen/issues"},"author":{"name":"Jay Sylvester","email":"jay@jaysylvester.com","url":"https://jaysylvester.com"},"license":"MIT","homepage":"https://github.com/jaysylvester/citizen#readme","keywords":["api server","application server","cache","caching","citizen","framework","mvc","server side","router","routing","view rendering","web application server","web server"],"repository":{"type":"git","url":"git+https://github.com/jaysylvester/citizen.git"},"description":"Node.js MVC web application framework. Includes routing, serving, caching, session management, and other helpful tools.","maintainers":[{"name":"jaysylvester","email":"jay@jaysylvester.com"}],"readme":"# citizen\n\ncitizen is an MVC-based web application framework designed for people interested in quickly building fast, scalable web sites instead of digging around Node's guts or cobbling together a wobbly Jenga tower made out of 50 different packages.\n\nUse citizen as the foundation for a traditional server-side web application, a modular single-page application (SPA), or a RESTful API.\n\n**There were numerous breaking changes in the transition from 0.9.x to 1.0.x.** Please consult the changelog for an itemized list and review this updated documentation thoroughly.\n\n\n## Benefits\n\n- Convention over configuration, but still flexible\n- Zero-configuration server-side routing with SEO-friendly URLs\n- Server-side session management\n- Key/value store: cache requests, controller actions, objects, and static files\n- Simple directives for managing cookies, sessions, redirects, caches, and more\n- Powerful code reuse options via includes (components) and chaining\n- HTML, JSON, JSONP, and plain text served from the same pattern\n- ES module and Node (CommonJS) module support\n- Hot module replacement in development mode\n- View rendering using template literals or any engine supported by [consolidate](https://github.com/ladjs/consolidate)\n- Few direct dependencies\n\nClearly, this is way more content than any NPM/Github README should contain. I'm working on a site for this documentation.\n\n\n## Is it production ready?\n\nI use citizen on [my personal site](https://jaysylvester.com) and [originaltrilogy.com](https://originaltrilogy.com). OT.com handles a moderate amount of traffic (a few hundred thousand views each month) on a $30 cloud hosting plan running a single instance of citizen, where the app/process runs for months at a time without crashing. It's very stable.\n\n\n## Quick Start\n\nThese commands will create a new directory for your web app, install citizen, use its scaffolding utility to create the app's skeleton, and start the web server:\n\n```bash\n$ mkdir myapp && cd myapp\n$ npm install citizen\n$ node node_modules/citizen/util/scaffold skeleton\n$ node app/start.js\n```\n\nIf everything went well, you'll see confirmation in the console that the web server is running. Go to http://127.0.0.1:3000 in your browser and you'll see a bare index template.\n\ncitizen uses [template literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) in its default template engine. You can install [consolidate](https://github.com/ladjs/consolidate), update the [template config](#config-settings), and modify the default view templates accordingly.\n\nFor configuration options, see [Configuration](#configuration). For more utilities to help you get started, see [Utilities](#utilities).\n\n\n<!-- ### Demo App\n\nCheck out [model-citizen](https://github.com/jaysylvester/model-citizen), a basic responsive web site built with citizen that demonstrates some of the framework's functionality. -->\n\n\n### App Directory Structure\n\n```\napp/\n  config/             // These files are all optional\n    citizen.json      // Default config file\n    local.json        // Examples of environment configs\n    qa.json\n    prod.json\n  controllers/\n    hooks/            // Application event hooks (optional)\n      application.js\n      request.js\n      response.js\n      session.js\n    routes/           // Public route controllers\n      index.js\n  helpers/            // Utility modules (optional)\n  models/             // Models (optional)\n    index.js\n  views/\n    error/            // Default error views\n      404.html\n      500.html\n      ENOENT.html\n      error.html\n    index.html        // Default index view\n  start.js\nlogs/                 // Log files\n  access.log\n  error.log\nweb/                  // public static assets\n```\n\n\n\n### Initializing citizen and starting the web server\n\nImport citizen and start your app:\n\n```js\n// start.js\nimport citizen from 'citizen'\n    \nglobal.app = citizen\napp.start()\n```\n\nRun from the terminal:\n\n```bash\n$ node start.js\n```\n\n\n\n### Configuration\n\nYou can configure your citizen app with a config file, startup options, and/or custom controller configurations.\n\nThe config directory is optional and contains configuration files in JSON format that drive both citizen and your app. You can have multiple citizen configuration files within this directory, allowing different configurations based on environment. citizen builds its configuration based on the following hierarchy:\n\n1. If citizen finds a config directory, it parses each JSON file looking for a `host` key that matches the machine's hostname, and if it finds one, extends the default configuration with the file config.\n2. If citizen can't find a matching `host` key, it looks for a file named citizen.json and loads that configuration.\n3. citizen then extends the config with your [optional startup config](#startup-configuration).\n4. Individual route controllers and and actions can have [their own custom config](#controller-configuration) that further extends the app config.\n\nLet's say you want to run citizen on port 8080 in your local dev environment and you have a local database your app will connect to. You could create a config file called local.json (or dev.json, whatever you want) with the following:\n\n```js\n{\n  \"host\":       \"My-MacBook-Pro.local\",\n  \"citizen\": {\n    \"mode\":     \"development\",\n    \"http\": {\n      \"port\":   8080\n    }\n  },\n  \"db\": {\n    \"server\":   \"localhost\",  // app.config.db.server\n    \"username\": \"dbuser\",     // app.config.db.username\n    \"password\": \"dbpassword\"  // app.config.db.password\n  }\n}\n```\n\nThis config would extend the default configuration only when running on your local machine. Using this method, you can commit multiple config files from different environments to the same repository.\n\nThe database settings would be accessible anywhere within your app via `app.config.db`. The `citizen` and `host` nodes are reserved for the framework; create your own node(s) to store your custom settings.\n\n\n#### Startup configuration\n\nYou can set your app's configuration at startup through `app.start()`. If there is a config file, the startup config will extend the config file. If there's no config file, the startup configuration extends the default citizen config.\n\n```js\n// Start an HTTPS server with a PFX file\napp.start({\n  citizen: {\n    http: {\n      enabled: false\n    },\n    https: {\n      enabled: true,\n      pfx:    '/absolute/path/to/site.pfx'\n    }\n  }\n})\n```\n\n\n#### Controller configuration\n\nTo set custom configurations at the route controller level, export a `config` object (more on route controllers and actions in the [route controllers](#route-controllers) section).\n\n```js\nexport const config = {\n  // The \"controller\" property sets a configuration for all actions in this controller\n  controller: {\n    contentTypes: [ 'application/json' ]\n  }\n\n  // The \"submit\" property is only for the submit() controller action\n  submit: {\n    form: {\n      maxPayloadSize: 1000000\n    }\n  }\n}\n```\n\n\n#### Default configuration\n\nThe following represents citizen's default configuration, which is extended by your configuration:\n\n```js\n{\n  host                 : '',\n  citizen: {\n    mode               : process.env.NODE_ENV || 'production',\n    global             : 'app',\n    http: {\n      enabled          : true,\n      hostname         : '127.0.0.1',\n      port             : 80\n    },\n    https: {\n      enabled          : false,\n      hostname         : '127.0.0.1',\n      port             : 443,\n      secureCookies    : true\n    },\n    connectionQueue    : null,\n    templateEngine     : 'templateLiterals',\n    compression: {\n      enabled          : false,\n      force            : false,\n      mimeTypes        : [\n                          'application/javascript',\n                          'application/x-javascript',\n                          'application/xml',\n                          'application/xml+rss',\n                          'image/svg+xml',\n                          'text/css',\n                          'text/html',\n                          'text/javascript',\n                          'text/plain',\n                          'text/xml'\n                          ]\n    },\n    sessions: {\n      enabled          : false,\n      lifespan         : 20 // minutes\n    },\n    layout: {\n      controller       : '',\n      view             : ''\n    },\n    contentTypes       : [\n                          'text/html',\n                          'text/plain',\n                          'application/json',\n                          'application/javascript'\n                          ],\n    forms: {\n      enabled          : true,\n      maxPayloadSize   : 524288 // 0.5MB\n    },\n    cache: {\n      application: {\n        enabled        : true,\n        lifespan       : 15, // minutes\n        resetOnAccess  : true,\n        encoding       : 'utf-8',\n        synchronous    : false\n      },\n      static: {\n        enabled        : false,\n        lifespan       : 15, // minutes\n        resetOnAccess  : true\n      },\n      invalidUrlParams : 'warn',\n      control          : {}\n    },\n    errors             : 'capture',\n    logs: {\n      access           : false, // performance-intensive, opt-in only\n      error: {\n        client         : true, // 400 errors\n        server         : true // 500 errors\n      },\n      debug            : false,\n      maxFileSize      : 10000,\n      watcher: {\n        interval       : 60000\n      }\n    },\n    development: {\n      debug: {\n        scope: {\n          config       : true,\n          context      : true,\n          cookie       : true,\n          form         : true,\n          payload      : true,\n          route        : true,\n          session      : true,\n          url          : true,\n        },\n        depth          : 4,\n        showHidden     : false,\n        view           : false\n      },\n      watcher: {\n        custom         : [],\n        killSession    : false,\n        ignored        : /(^|[/\\\\])\\../ // Ignore dotfiles\n      }\n    },\n    urlPath            : '/',\n    directories: {\n      app              : <appDirectory>,\n      controllers      : <appDirectory> + '/controllers',\n      helpers          : <appDirectory> + '/helpers',\n      models           : <appDirectory> + '/models',\n      views            : <appDirectory> + '/views',\n      logs             : new URL('../../../logs', import.meta.url).pathname\n      web              : new URL('../../../web', import.meta.url).pathname\n    }\n  }\n}\n```\n\n\n#### Config settings\n\nHere's a complete rundown of citizen's settings and what they do.\n\nWhen starting a server, in addition to citizen's `http` and `https` config options, you can provide the same options as Node's [http.createServer()](https://nodejs.org/api/http.html#httpcreateserveroptions-requestlistener) and [https.createServer()](https://nodejs.org/api/https.html#httpscreateserveroptions-requestlistener).\n\nThe only difference is how you pass key files. As you can see in the examples above, you pass citizen the file paths for your key files. citizen reads the files for you.\n\n<table>\n  <caption>citizen config options</caption>\n  <thead>\n    <tr>\n      <th>\n        Setting\n      </th>\n      <th>\n        Type\n      <th>\n        Default Value\n      </th>\n      <th>\n        Description\n      </th>\n    </tr>\n  </thead>\n  <tr>\n    <td>\n      <code>host</code>\n    </td>\n    <td>\n        String\n    </td>\n    <td>\n      <code>''</code>\n    </td>\n    <td>\n      To load different config files in different environments, citizen relies upon the server's hostname as a key. At startup, if citizen finds a config file with a <code>host</code> key that matches the server's hostname, it chooses that config file. This is not to be confused with the HTTP server <code>hostname</code> (see below).\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      citizen\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>mode</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      Checks <code>NODE_ENV</code> first, otherwise <code>production</code>\n    </td>\n    <td>\n      The application mode determines certain runtime behaviors. Possible values are <code>production</code> and <code>development</code> Production mode silences console logs. Development mode enables verbose console logs, URL debug options, and hot module replacement.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>global</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>app</code>\n    </td>\n    <td>\n      The convention for initializing citizen in the start file assigns the framework to a global variable. The default, which you'll see referenced throughout the documentation, is <code>app</code>. You can change this setting if you want to use another name.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>contentTypes</code>\n    </td>\n    <td>\n      Array\n    </td>\n    <td>\n      <code>\n        [\n          'text/html',\n          'text/plain',\n          'application/json',\n          'application/javascript'\n        ]\n      </code>\n    </td>\n    <td>\n      An allowlist of response formats for each request, based on the client's <code>Accept</code> request header. When configuring available formats for individual route controllers or actions, the entire array of available formats must be provided.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>errors</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>capture</code>\n    </td>\n    <td>\n      When your application throws an error, the default behavior is for citizen to try to recover from the error and keep the application running. Setting this option to <code>exit</code> tells citizen to log the error and exit the process instead.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>templateEngine</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>templateLiterals</code>\n    </td>\n    <td>\n      citizen uses [template literal](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) syntax for view rendering by default. Optionally, you can install <a href=\"https://github.com/tj/consolidate.js\">consolidate</a> and use any engine it supports (for example, install Handlebars and set <code>templateEngine</code> to <code>handlebars</code>).\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>urlPath</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>/</code>\n    </td>\n    <td>\n      Denotes the URL path leading to your app. If you want your app to be accessible via http://yoursite.com/my/app and you're not using another server as a front end to proxy the request, this setting should be <code>/my/app</code> (don't forget the leading slash). This setting is required for the router to work.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      http\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n        Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      Enables the HTTP server.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>hostname</code>\n    </td>\n    <td>\n        String\n    </td>\n    <td>\n      <code>127.0.0.1</code>\n    </td>\n    <td>\n      The hostname at which your app can be accessed via HTTP. You can specify an empty string to accept requests at any hostname.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>port</code>\n    </td>\n    <td>\n        Number\n    </td>\n    <td>\n      <code>3000</code>\n    </td>\n    <td>\n      The port number on which citizen's HTTP server listens for requests.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      https\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n        Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables the HTTPS server.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>hostname</code>\n    </td>\n    <td>\n        String\n    </td>\n    <td>\n      <code>127.0.0.1</code>\n    </td>\n    <td>\n      The hostname at which your app can be accessed via HTTPS. The default is localhost, but you can specify an empty string to accept requests at any hostname.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>port</code>\n    </td>\n    <td>\n        Number\n    </td>\n    <td>\n      <code>443</code>\n    </td>\n    <td>\n      The port number on which citizen's HTTPS server listens for requests.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>secureCookies</code>\n    </td>\n    <td>\n        Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      By default, all cookies set within an HTTPS request are secure. Set this option to <code>false</code> to override that behavior, making all cookies insecure and requiring you to manually set the <code>secure</code> option in the cookie directive.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>connectionQueue</code>\n    </td>\n    <td>\n        Integer\n    </td>\n    <td>\n      <code>null</code>\n    </td>\n    <td>\n      The maximum number of incoming requests to queue. If left unspecified, the operating system determines the queue limit.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      sessions\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables the user session scope, which assigns each visitor a unique ID and allows you to store data associated with that ID within the application server.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>lifespan</code>\n    </td>\n    <td>\n      Positive Integer\n    </td>\n    <td>\n      <code>20</code>\n    </td>\n    <td>\n      If sessions are enabled, this number represents the length of a user's session, in minutes. Sessions automatically expire if a user has been inactive for this amount of time.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      layout\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>controller</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>''</code>\n    </td>\n    <td>\n      If you use a global layout controller, you can specify the name of that controller here instead of using the <code>next</code> directive in all your controllers.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>view</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>''</code>\n    </td>\n    <td>\n      By default, the layout controller will use the default layout view, but you can specify a different view here. Use the file name without the file extension.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      forms\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      citizen provides basic payload processing for simple forms. If you prefer to use a separate form package, set this to <code>false</code>.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>maxPayloadSize</code>\n    </td>\n    <td>\n      Positive Integer\n    </td>\n    <td>\n      <code>524288</code>\n    </td>\n    <td>\n      Maximum form payload size, in bytes. Set a max payload size to prevent your server from being overloaded by form input data.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      compression\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables gzip and deflate compression for rendered views and static assets.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>force</code>\n    </td>\n    <td>\n      Boolean or String\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Forces gzip or deflate encoding for all clients, even if they don't report accepting compressed formats. Many proxies and firewalls break the Accept-Encoding header that determines gzip support, and since all modern clients support gzip, it's usually safe to force it by setting this to <code>gzip</code>, but you can also force <code>deflate</code>.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>mimeTypes</code>\n    </td>\n    <td>\n      Array\n    </td>\n    <td>\n      <p>See default config above.</p>\n    </td>\n    <td>\n      An array of MIME types that will be compressed if compression is enabled. See the sample config above for the default list. If you want to add or remove items, you must replace the array in its entirety.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      cache\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>control</code>\n    </td>\n    <td>\n      Object containing key/value pairs\n    </td>\n    <td>\n      <code>{}</code>\n    </td>\n    <td>\n      Use this setting to set Cache-Control headers for route controllers and static assets. The key is the pathname of the asset, and the value is the Cache-Control header. See <a href=\"#client-side-caching\">Client-Side Caching</a> for details.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>invalidUrlParams</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>warn</code>\n    </td>\n    <td>\n      The route cache option can specify valid URL parameters to prevent bad URLs from being cached, and <code>invalidUrlParams</code> determines whether to log a warning when encountering bad URLs or throw a client-side error. See <a href=\"#caching-requests-and-controller-actions\">Caching Requests and Controller Actions</a> for details.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      cache.application\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      Enables the in-memory cache, accessed via the <code>cache.set()</code> and <code>cache.get()</code> methods.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>lifespan</code>\n    </td>\n    <td>\n      Number\n    </td>\n    <td>\n      <code>15</code>\n    </td>\n    <td>\n      The length of time a cached application asset remains in memory, in minutes.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>resetOnAccess</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      Determines whether to reset the cache timer on a cached asset whenever the cache is accessed. When set to <code>false</code>, cached items expire when the <code>lifespan</code> is reached.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>encoding</code>\n    </td>\n    <td>\n      String\n    </td>\n    <td>\n      <code>utf-8</code>\n    </td>\n    <td>\n      When you pass a file path to cache.set(), the encoding setting determines what encoding should be used when reading the file.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>synchronous</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      When you pass a file path to cache.set(), this setting determines whether the file should be read synchronously or asynchronously. By default, file reads are asynchronous.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      cache.static\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enabled</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      When serving static files, citizen normally reads the file from disk for each request. You can speed up static file serving considerably by setting this to <code>true</code>, which caches file buffers in memory.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>lifespan</code>\n    </td>\n    <td>\n      Number\n    </td>\n    <td>\n      <code>15</code>\n    </td>\n    <td>\n      The length of time a cached static asset remains in memory, in minutes.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>resetOnAccess</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      Determines whether to reset the cache timer on a cached static asset whenever the cache is accessed. When set to <code>false</code>, cached items expire when the <code>lifespan</code> is reached.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      logs\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>access</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables HTTP access log files. Disabled by default because access logs can explode quickly and ideally it should be handled by a web server.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>debug</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables debug log files. Useful for debugging production issues, but extremely verbose (the same logs you would see in the console in development mode).\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>maxFileSize</code>\n    </td>\n    <td>\n      Number\n    </td>\n    <td>\n      <code>10000</code>\n    </td>\n    <td>\n      Determines the maximum file size of log files, in kilobytes. When the limit is reached, the log file is renamed with a time stamp and a new log file is created.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      logs.error\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>client</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>true</code>\n    </td>\n    <td>\n      Enables logging of 400-level client errors.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>server</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Enables logging of 500-level server/application errors.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>status</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Controls whether status messages should be logged to the console when in production mode. (Development mode always logs to the console.)\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      logs.watcher\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>interval</code>\n    </td>\n    <td>\n      Number\n    </td>\n    <td>\n      <code>60000</code>\n    </td>\n    <td>\n      For operating systems that don't support file events, this timer determines how often log files will be polled for changes prior to archiving, in milliseconds.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      development\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      development.debug\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>scope</code>\n    </td>\n    <td>\n      Object\n    </td>\n    </td>\n    <td>\n    <td>\n      This setting determines which scopes are logged in the debug output in development mode. By default, all scopes are enabled.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>depth</code>\n    </td>\n    <td>\n      Positive integer\n    </td>\n    <td>\n      <code>3</code>\n    </td>\n    <td>\n      When citizen dumps an object in the debug content, it inspects it using Node's util.inspect. This setting determines the depth of the inspection, meaning the number of nodes that will be inspected and displayed. Larger numbers mean deeper inspection and slower performance.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>view</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Set this to true to dump debug info directly into the HTML view.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>enableCache</code>\n    </td>\n    <td>\n      Boolean\n    </td>\n    <td>\n      <code>false</code>\n    </td>\n    <td>\n      Development mode disables the cache. Change this setting to <code>true</code> to enable the cache in development mode.\n    </td>\n  </tr>\n  <tr>\n    <td colspan=\"4\">\n      development.watcher\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>custom</code>\n    </td>\n    <td>\n      Array\n    </td>\n    </td>\n    <td>\n    <td>\n      You can tell citizen's hot module replacement to watch your own custom modules. This array can contain objects with <code>watch</code> (relative directory path to your modules within the app directory) and <code>assign</code> (the variable to which you assign these modules) properties. Example:\n      <br><br>\n      <code>[ { \"watch\": \"/util\", \"assign\": \"app.util\" } ]</code>\n    </td>\n  </tr>\n</table>\n\ncitizen uses [chokidar](https://www.npmjs.com/package/chokidar) as its file watcher, so `watcher` option for both logs and development mode also accepts any option allowed by chokidar.\n\n\nThese settings are exposed publicly via `app.config.host` and `app.config.citizen`.\n\nThis documentation assumes your global app variable name is `app`. Adjust accordingly.\n\n\n### citizen exports\n\n<table>\n  <tr>\n    <td>\n      <code>app.start()</code>\n    </td>\n    <td>\n      Starts a citizen web application server.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>app.config</code>\n    </td>\n    <td>\n      The configuration settings you supplied at startup. citizen's settings are within <code>app.config.citizen</code>.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>app.controllers</code><br />\n      <code>app.models</code><br />\n      <code>app.views</code>\n    </td>\n    <td>\n      It's unlikely you'll need to access controllers and views directly, but referencing <code>app.models</code> instead of importing your models manually benefits from citizen's built-in <a href=\"#hot-module-replacement\">hot module replacement</a>.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>app.helpers</code>\n    </td>\n    <td>\n      All <a href=\"#helpers\">helper/utility modules</a> placed in <code>app/helpers/</code> are imported into the helpers object.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>app.cache.set()</code><br />\n      <code>app.cache.get()</code><br />\n      <code>app.cache.exists()</code><br />\n      <code>app.cache.clear()</code>\n    </td>\n    <td>\n      <a href=\"#object-caching\">Application cache</a> and key/value store used internally by citizen, also available for your app.\n    </td>\n  </tr>\n  <tr>\n    <td>\n      <code>app.log()</code>\n    </td>\n    <td>\n      Basic <a href=\"#logs\">console and file logging</a> used by citizen, exported for your use.\n    </td>\n  </tr>\n</table>\n\n\n\n## Routing and URLs\n\nThe citizen URL structure determines which route controller and action to fire, passes URL parameters, and makes a bit of room for SEO-friendly content that can double as a unique identifier. The structure looks like this:\n\n```\nhttp://www.site.com/controller/seo-content/action/myAction/param/val/param2/val2\n```\n\nFor example, let's say your site's base URL is:\n\n```\nhttp://www.cleverna.me\n```\n\nThe default route controller is `index`, and the default action is `handler()`, so the above is the equivalent of the following:\n\n```\nhttp://www.cleverna.me/index/action/handler\n```\n\nIf you have an `article` route controller, you'd request it like this:\n\n```\nhttp://www.cleverna.me/article\n```\n\nInstead of query strings, citizen passes URL parameters consisting of name/value pairs. If you had to pass an article ID of 237 and a page number of 2, you'd append name/value pairs to the URL:\n\n```\nhttp://www.cleverna.me/article/id/237/page/2\n```\n\nValid parameter names may contain letters, numbers, underscores, and dashes, but must start with a letter or underscore.\n\nThe default controller action is `handler()`, but you can specify alternate actions with the `action` parameter (more on this later):\n\n```\nhttp://www.cleverna.me/article/action/edit\n```\n\ncitizen also lets you optionally insert relevant content into your URLs, like so:\n\n```\nhttp://www.cleverna.me/article/My-Clever-Article-Title/page/2\n```\n\nThis SEO content must always follow the controller name and precede any name/value pairs, including the controller action. You can access it generically via `route.descriptor` or within the `url` scope (`url.article` in this case), which means you can use it as a unique identifier (more on URL parameters in the [Route Controllers section](#route-controllers)).\n\n### Reserved words\n\nThe URL parameters `action` and `direct` are reserved for the framework, so don't use them for your app.\n\n\n\n## MVC Patterns\n\ncitizen relies on a simple model-view-controller convention. The article pattern mentioned above might use the following structure:\n\n```\napp/\n  controllers/\n    routes/\n      article.js\n  models/\n    article.js    // Optional, name it whatever you want\n  views/\n    article.html  // The default view file name should match the controller name\n```\n\nAt least one route controller is required for a given URL, and a route controller's default view file must share its name. Models are optional.\n\nAll views for a given route controller can exist in the `app/views/` directory, or they can be placed in a directory whose name matches that of the controller for cleaner organization:\n\n```\napp/\n  controllers/\n    routes/\n      article.js\n    models/\n      article.js\n    views/\n      article/\n        article.html  // The default view\n        edit.html     // Alternate article views\n        delete.html\n```\n\nMore on views in the [Views section](#views).\n\nModels and views are optional and don't necessarily need to be associated with a particular controller. If your route controller is going to pass its output to another controller for further processing and final rendering, you don't need to include a matching view (see the [controller next directive](#controller-chaining)).\n\n\n\n### Route Controllers\n\nA citizen route controller is just a JavaScript module. Each route controller requires at least one export to serve as an action for the requested route. The default action should be named `handler()`, which is called by citizen when no action is specified in the URL.\n\n```js\n// Default route controller action\n\nexport const handler = async (params, request, response, context) => {\n\n  // Do some stuff\n\n  return {\n    // Send content and directives to the server\n  }\n}\n```\n\nThe citizen server calls `handler()` after it processes the initial request and passes it 4 arguments: a `params` object containing the parameters of the request, the Node.js `request` and `response` objects, and the current request's context.\n\n<table>\n  <caption>Properties of the <code>params</code> object</caption>\n  <tr>\n    <td><code>config</code></td>\n    <td>Your app's configuration, including any <a href=\"#controller-configuration\">customizations</a> for the current controller action</td>\n  </tr>\n  <tr>\n    <td><code>route</code></td>\n    <td>Details of the requested route, such as the URL and the name of the route controller</td>\n  </tr>\n  <tr>\n    <td><code>url</code></td>\n    <td>Any parameters derived from the URL</td>\n  </tr>\n  <tr>\n    <td><code>form</code></td>\n    <td>Data collected from a POST</td>\n  </tr>\n  <tr>\n    <td><code>payload</code></td>\n    <td>The raw request payload</td>\n  </tr>\n  <tr>\n    <td><code>cookie</code></td>\n    <td>Cookies sent with the request</td>\n  </tr>\n  <tr>\n    <td><code>session</code></td>\n    <td>Session variables, if sessions are enabled</td>\n  </tr>\n</table>\n\n\nIn addition to having access to these objects within your controller, they are also included in your view context automatically so you can reference them within your view templates as local variables (more details in the <a href=\"#views\">Views section</a>).\n\nFor example, based on the previous article URL...\n\n```\nhttp://www.cleverna.me/article/My-Clever-Article-Title/id/237/page/2\n```\n\n...you'll have the following `params.url` object passed to your controller:\n\n```js\n{\n  article: 'My-Clever-Article-Title',\n  id: '237',\n  page: '2'\n}\n```\n\nThe controller name becomes a property in the URL scope that references the descriptor, which makes it well-suited for use as a unique identifier. It's also available in the `params.route` object as `params.route.descriptor`.\n\nThe `context` argument contains any data or directives that have been generated by previous controllers in the chain using their `return` statement.\n\nTo return the results of the controller action, include a `return` statement with any data and [directives](#controller-directives) you want to pass to citizen.\n\nUsing the above URL parameters, I can retrieve the article content from the model and pass it back to the server:\n\n```js\n// article controller\n\nexport const handler = async (params) => {\n  // Get the article\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n  const author = await app.models.article.getAuthor({\n    author: article.author\n  })\n\n  // Any data you want available to the view should be placed in the local directive\n  return {\n    local: {\n      article: article,\n      author: author\n    }\n  }\n}\n```\n\nAlternate actions can be requested using the `action` URL parameter. For example, maybe we want a different action and view to edit an article:\n\n```js\n// http://www.cleverna.me/article/My-Clever-Article-Title/id/237/page/2/action/edit\n\n// article controller\n\nexport const handler = async (params) => {\n  // Get the article\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n  const author = await app.models.article.getAuthor({\n    author: article.author\n  })\n\n  // Return the article for view rendering using the local directive\n  return {\n    local: {\n      article: article,\n      author: author\n    }\n  }\n}\n\nexport const edit = async (params) => {\n  // Get the article\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n\n  // Use the /views/article/edit.html view for this action\n  return {\n    local: {\n      article: article\n    },\n    view: 'edit'\n  }\n}\n```\n\nYou place any data you want to pass back to citizen within the `return` statement. All the data you want to render in your view should be passed to citizen within an object called `local`, as shown above. Additional objects can be passed to citizen to set directives that provide instructions to the server (see [Controller Directives](#controller-directives)). You can even add your own objects to the context and pass them from controller to controller (more in the [Controller Chaining section](#controller-chaining).)\n\n\n\n### Models\n\nModels are optional modules and their structure is completely up to you. citizen doesn't talk to your models directly; it only stores them in `app.models` for your convenience. You can also import them manually into your controllers if you prefer.\n\nThe following function, when placed in `app/models/article.js`, will be accessible in your app via `app.models.article.get()`:\n\n```js\n// app.models.article.get()\nexport const get = async (id) => {\n\n  let article = // do some stuff to retrieve the article from the db using the provided ID, then...\n\n  return article\n}\n```\n\n\n\n### Views\n\ncitizen uses [template literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) for view rendering by default. You can install [consolidate.js](https://github.com/tj/consolidate.js) and use any supported template engine. Just update the `templateEngine` config setting accordingly.\n\nIn `article.html`, you can reference variables you placed within the `local` object passed into the route controller's return statement. citizen also injects properties from the `params` object into your view context automatically, so you have access to those objects as local variables (such as the `url` scope):\n\n```html\n<!-- article.html -->\n\n<!doctype html>\n<html>\n  <body>\n    <main>\n      <h1>\n        ${local.article.title} — Page ${url.page}\n      </h1>\n      <h2>${local.author.name}, ${local.article.published}</h2>\n      <p>\n        ${local.article.summary}\n      </p>\n      <section>\n        ${local.article.text}\n      </section>\n    </main>\n  </body>\n</html>\n```\n\n\n#### Rendering alternate views\n\nBy default, the server renders the view whose name matches that of the controller. To render a different view, [use the `view` directive in your return statement](#alternate-views).\n\nAll views go in `/app/views`. If a controller has multiple views, you can organize them within a directory named after that controller.\n\n```\napp/\n  controllers/\n    routes/\n      article.js\n      index.js\n  views/\n    article/\n      article.html  // Default article controller view\n      edit.html\n    index.html      // Default index controller view\n```\n\n\n#### JSON and JSON-P\n\nYou can tell a route controller to return its local variables as JSON or JSON-P by setting the appropriate HTTP `Accept` header in your request, letting the same resource serve both a complete HTML view and JSON for AJAX requests and RESTful APIs.\n\nThe article route controller `handler()` action would return:\n\n```json\n{\n  \"article\": {\n    \"title\": \"My Clever Article Title\",\n    \"summary\": \"Am I not terribly clever?\",\n    \"text\": \"This is my article text.\"\n  },\n  \"author\": {\n    \"name\": \"John Smith\",\n    \"email\": \"jsmith@cleverna.me\"\n  }\n}\n```\n\nWhatever you've added to the controller's return statement `local` object will be returned.\n\nFor JSONP, use `callback` in the URL:\n\n```\nhttp://www.cleverna.me/article/My-Clever-Article-Title/callback/foo\n```\n\nReturns:\n\n```js\nfoo({\n  \"article\": {\n    \"title\": \"My Clever Article Title\",\n    \"summary\": \"Am I not terribly clever?\",\n    \"text\": \"This is my article text.\"\n  },\n  \"author\": {\n    \"name\": \"John Smith\",\n    \"email\": \"jsmith@cleverna.me\"\n  }\n});\n```\n\n\n### Forcing a Content Type\n\nTo force a specific content type for a given request, set `response.contentType` in the route controller to your desired output:\n\n```js\nexport const handler = async (params, request, response) => {\n  // Every request will receive a JSON response regardless of the Accept header\n  response.contentType = 'application/json'\n}\n```\n\nYou can force a global response type across all requests within an [event hook](#application-event-hooks).\n\n\n\n## Helpers\n\nHelpers are optional utility modules and their structure is completely up to you. They're stored in `app.helpers` for your convenience. You can also import them manually into your controllers and models if you prefer.\n\nThe following function, when placed in `app/helpers/validate.js`, will be accessible in your app via `app.helpers.validate.email()`:\n\n```js\n// app.helpers.validate.email()\nexport const email = (address) => {\n  const emailRegex = new RegExp(/[a-z0-9!##$%&''*+/=?^_`{|}~-]+(?:\\.[a-z0-9!##$%&''*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/i)\n\n  return emailRegex.test(address)\n}\n```\n\n\n\n## Hot Module Replacement\n\ncitizen stores all modules in the `app` scope not just for easy retrieval, but to support hot module replacement (HMR). When you save changes to any module or view in development mode, citizen clears the existing module import and re-imports that module in real time.\n\nYou'll see a console log noting the affected file, and your app will continue to run. No need to restart.\n\n\n\n## Error Handling\n\ncitizen does its best to handle errors gracefully without exiting the process. The following controller action will throw an error, but the server will respond with a 500 and keep running:\n\n```js\nexport const handler = async (params) => {\n  // app.models.article.foo() doesn't exist, so this action will throw an error\n  const foo = await app.models.article.foo(params.url.article)\n\n  return {\n    local: foo\n  }\n}\n```\n\nYou can also throw an error manually and customize the error message:\n\n```js\nexport const handler = async (params) => {\n  // Get the article\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n\n  // If the article exists, return it\n  if ( article ) {\n    return {\n      local: {\n        article: article\n      }\n    }\n  // If the article doesn't exist, throw a 404\n  } else {\n    // Error messages default to the standard HTTP Status Code response, but you can customize them.\n    let err = new Error('The requested article does not exist.')\n\n    // The HTTP status code defaults to 500, but you can specify your own\n    err.statusCode = 404\n\n    throw err\n  }\n}\n```\n\nNote that `params.route.controller` is updated from the requested controller to `error`, so any references in your app to the requested controller should take this into account.\n\nErrors are returned in the format requested by the route. If you request [JSON](#json-and-json-p) and the route throws an error, citizen will return the error in JSON format.\n\nThe app skeleton created by the [scaffold utility](#scaffold) includes optional error view templates for common client and server errors, but you can create templates for any HTTP error code.\n\n### Capture vs. Exit\n\ncitizen's default error handling method is `capture`, which attempts graceful recovery. If you'd prefer to exit the process after an error, change `config.citizen.errors` to `exit`.\n\n```js\n// config file: exit the process after an error\n{\n  \"citizen\": {\n    \"errors\": \"exit\"\n  }\n}\n```\n\nAfter the application error handler fires, citizen will exit the process.\n\n\n### Error Views\n\nTo create custom error views for server errors, create a directory called `/app/views/error` and populate it with templates named after the HTTP response code or Node error code.\n\n```\napp/\n  views/\n    error/\n      500.html      // Displays any 500-level error\n      404.html      // Displays 404 errors specifically\n      ENOENT.html   // Displays bad file read operations\n      error.html    // Displays any error without its own template\n```\n\n\n## Controller Directives\n\nIn addition to view data, the route controller action's return statement can also pass directives to render alternate views, set cookies and session variables, initiate redirects, call and render includes, cache route controller actions/views (or entire requests), and hand off the request to another controller for further processing.\n\n\n### Alternate Views\n\nBy default, the server renders the view whose name matches that of the controller. To render a different view, use the `view` directive in your return statement:\n\n```js\n// article controller\n\nexport const edit = async (params) => {\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n\n  return {\n    local: article,\n    // This tells the server to render app/views/article/edit.html\n    view: 'edit'\n  }\n}\n```\n\n\n### Cookies\n\nYou set cookies by returning a `cookie` object within the controller action.\n\n```js\nexport const handler = async (params) => {\n  return {\n    cookie: {\n      // Cookie shorthand sets a cookie called username using the default cookie properties\n      username: params.form.username,\n\n      // Sets a cookie called last_active that expires in 20 minutes\n      last_active: {\n        value: new Date().toISOString(),\n        expires: 20\n      }\n    }\n  }\n}\n```\n\nHere's an example of a complete cookie object's default settings:\n\n```js\nmyCookie = {\n  value: 'myValue',\n\n  // Valid expiration options are:\n  // 'now' - deletes an existing cookie\n  // 'never' - current time plus 30 years, so effectively never\n  // 'session' - expires at the end of the browser session (default)\n  // [time in minutes] - expires this many minutes from now\n  expires: 'session',\n\n  path: '/',\n\n  // citizen's cookies are accessible via HTTP/HTTPS only by default. To access a\n  // cookie via JavaScript, set this to false.\n  httpOnly: true,\n\n  // Cookies are insecure when set over HTTP and secure when set over HTTPS.\n  // You can override that behavior globally with the https.secureCookies setting\n  // in your config or on a case-by-case basis with this setting.\n  secure: false\n}\n```\n\nOnce cookies are set on the client, they're available in `params.cookie` within controllers and simply `cookie` within the view:\n\n```html\n<!doctype html>\n<html>\n  <body>\n    <section>\n      Welcome, ${cookie.username}.\n    </section>\n  </body>\n</html>\n```\n\nCookie variables you set within your controller aren't immediately available within the `params.cookie` scope. citizen has to receive the context from the controller and send the response to the client first, so use a local instance of the variable if you need to access it during the same request.\n\n#### Reserved Words\n\nAll cookies set by citizen start with the `ctzn_` prefix to avoid collisions. Don't start your cookie names with `ctzn_` and you should have no problems.\n\n#### Proxy Header\n\nIf you use citizen behind a proxy, such as NGINX or Apache, make sure you have an HTTP `Forwarded` header in your server configuration so citizen's handling of secure cookies works correctly.\n\nHere's an example of how you might set this up in NGINX:\n\n```\nlocation / {\n  proxy_set_header Forwarded         \"for=$remote_addr;host=$host;proto=$scheme;\";\n  proxy_pass                          http://127.0.0.1:8080;\n}\n```\n\n\n\n### Session Variables\n\nIf sessions are enabled, you can access session variables via `params.session` in your controller or simply `session` within views. These local scopes reference the current user's session without having to pass a session ID.\n\nBy default, a session has four properties: `id`, `started`, `expires`, and `timer`. The session ID is also sent to the client as a cookie called `ctzn_session_id`.\n\nSetting session variables is pretty much the same as setting cookie variables:\n\n```js\nreturn {\n  session: {\n    username: 'Danny',\n    nickname: 'Doc'\n  }\n}\n```\n\nLike cookies, session variables you've just assigned aren't available during the same request within the `params.session` scope, so use a local instance if you need to access this data right away.\n\nSessions expire based on the `sessions.lifespan` config property, which represents the length of a session in minutes. The default is 20 minutes. The `timer` is reset with each request from the user. When the `timer` runs out, the session is deleted. Any client requests after that time will generate a new session ID and send a new session ID cookie to the client.\n\nTo forcibly clear and expire the current user's session:\n\n```js\nreturn {\n  session: {\n    expires: 'now'\n  }\n}\n```\n\n#### Reserved Words\n\nAll session variables set by citizen start with the `ctzn_` prefix to avoid collisions. Don't start your session variable names with `ctzn_` and you should have no problems.\n\n\n### Redirects\n\nYou can pass redirect instructions to the server that will be initiated after the controller action is processed.\n\nThe `redirect` object takes a URL string in its shorthand version, or three options: `statusCode`, `url`, and `refresh`. If you don't provide a status code, citizen uses 302 (temporary redirect). The `refresh` option determines whether the redirect uses a [Location header](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30) or the non-standard [Refresh header](https://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Refresh).\n\n```js\n// Initiate a temporary redirect using the Location header\nreturn {\n  redirect: '/login'\n}\n\n// Initiate a permanent redirect using the Refresh header, delaying the redirect by 5 seconds\nreturn {\n  redirect: {\n    url: '/new-url',\n    statusCode: 301,\n    refresh: 5\n  }\n}\n```\n\nUnlike the Location header, if you use the `refresh` option, citizen will send a rendered view to the client because the redirect occurs client-side.\n\nUsing the Location header breaks (in my opinion) the Referer header because the Referer ends up being not the resource that initiated the redirect, but the resource prior to the page that initiated it. To get around this problem, citizen stores a session variable called `ctzn_referer` that contains the URL of the resource that initiated the redirect, which you can use to redirect users properly. For example, if an unauthenticated user attempts to access a secure page and you redirect them to a login form, the address of the secure page will be stored in `ctzn_referer` so you can send them there instead of the previous page.\n\nIf you haven't enabled sessions, citizen falls back to creating a cookie named `ctzn_referer` instead.\n\n#### Proxy Header\n\nIf you use citizen behind a proxy, such as NGINX or Apache, make sure you have an HTTP `Forwarded` header in your server configuration so `ctzn_referer` works correctly.\n\nHere's an example of how you might set this up in NGINX:\n\n```\nlocation / {\n  proxy_set_header Forwarded         \"for=$remote_addr;host=$host;proto=$scheme;\";\n  proxy_pass                          http://127.0.0.1:8080;\n}\n```\n\n\n\n### HTTP Headers\n\nYou can set HTTP headers using the `header` directive:\n\n```js\nreturn {\n  header: {\n    'Cache-Control':  'max-age=86400',\n    'Date':           new Date().toISOString()\n  }\n}\n```\n\nYou can also set headers directly using Node's `response.setHeader()` method, but using citizen's `header` directive preserves those headers in the [request cache](#caching-requests-and-controller-actions), so they'll be applied whenever that controller action is pulled from the cache.\n\n\n\n### Includes (Components)\n\ncitizen lets you use complete MVC patterns as includes, which are citizen's version of components. Each has its own route controller, model, and view(s). Includes can be used to perform an action or return a complete rendered view. Any route controller can be an include.\n\nLet's say our article pattern's template has the following contents. The head section contains dynamic meta data, and the header's content changes depending on whether the user is logged in or not:\n\n```html\n<!doctype html>\n<html>\n  <head>\n    <title>${local.metaData.title}</title>\n    <meta name=\"description\" content=\"${local.metaData.description}\">\n    <meta name=\"keywords\" content=\"${local.metaData.keywords}\">\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"site.css\">\n  </head>\n  <body>\n    <header>\n      ${ cookie.username ? '<p>Welcome, ' + cookie.username + '</p>' : '<a href=\"/login\">Login</a>' }\n    </header>\n    <main>\n      <h1>${local.article.title} — Page ${url.page}</h1>\n      <p>${local.article.summary}</p>\n      <section>${local.article.text}</section>\n    </main>\n  </body>\n</html>\n```\n\nIt probably makes sense to use includes for the head section and header because you'll use that code everywhere, but rather than simple partials, you can create citizen includes. The head section can use its own model for populating the meta data, and since the header is different for authenticated users, let's pull that logic out of the view and put it in the header's controller. I like to follow the convention of starting partials with an underscore, but that's up to you:\n\n```\napp/\n  controllers/\n    routes/\n      _head.js\n      _header.js\n      article.js\n  models/\n    _head.js\n    article.js\n  views/\n    _head.html\n    _header/\n      _header.html\n      _header-authenticated.html  // A different header for logged in users\n    article.html\n```\n\nWhen the article controller is fired, it has to tell citizen which includes it needs. We do that with the `include` directive:\n\n```js\n// article controller\n\nexport const handler = async (params) => {\n  // Get the article\n  const article = await app.models.article.get({\n    article: params.url.article,\n    page: params.url.page\n  })\n\n  return {\n    local: {\n      article: article\n    },\n    include: {\n      // Include shorthand is a string containing the pathname to the desired route controller\n      _head: '/_head/action/article',\n\n      // Long-form include notation can explicitly define a route controller, action, and view\n      _header: {\n        controller: '_header',\n\n        // If the username cookie exists, use the authenticated action. If not, use the default action.\n        action: params.cookie.username ? 'authenticated' : 'handler'\n      }\n    }\n  }\n}\n```\n\ncitizen include patterns have the same requirements as regular patterns, including a controller with a public action. The `include` directive above tells citizen to call the `_head` and `_header` controllers, pass them the same arguments that were passed to the `article` controller (params, request, response, context), render their respective views, and add the resulting views to the view context.\n\nHere's what our head section controller might look like:\n\n```js\n// _head controller\n\nexport const article = async (params) => {\n  let metaData = await app.models._head({ article: params.url.article })\n\n  return {\n    local: {\n      metaData: metaData\n    }\n  }\n}\n```\n\nAnd the head section view:\n\n```html\n<head>\n  <title>${local.metaData.title}</title>\n  <meta name=\"description\" content=\"${local.metaData.description}\">\n  <meta name=\"keywords\" content=\"${local.metaData.keywords}\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"site.css\">\n</head>\n```\n\nHere's what our header controller might look like:\n\n```js\n// _header controller\n\n// No need for a return statement, and no need to specify the view\n// because handler() renders the default view.\n//\n// Every route controller needs at least one action, even if it's empty.\nexport const handler = () => {}\n\nexport const authenticated = () => {\n  return {\n    view: '_header-authenticated'\n  }\n}\n```\n\n\nAnd the header views:\n\n```html\n<!-- /views/_header/_header.html -->\n\n<header>\n  <a href=\"/login\">Login</a>\n</header>\n```\n\n&nbsp;\n\n```html\n<!-- /views/_header/_header-authenticated.html -->\n\n<header>\n  <p>Welcome, ${cookie.username}</p>\n</header>\n```\n\n\nThe rendered includes are stored in the `include` scope:\n\n```html\n<!-- /views/article.html -->\n\n<!doctype html>\n<html>\n  ${include._head}\n  <body>\n    ${include._header}\n    <main>\n      <h1>${local.title} — Page ${url.page}</h1>\n      <p>${local.summary}</p>\n      <section>${local.text}</section>\n    </main>\n  </body>\n</html>\n```\n\ncitizen includes are self-contained and delivered to the calling controller as a fully-rendered view. While they receive the same data (URL parameters, form inputs, request context, etc.) as the calling controller, data generated inside an include isn't passed back to the caller.\n\nA pattern meant to be used as an include can be accessed via HTTP just like any other route controller. You could request the `_header` controller like so and receive a chunk of HTML or JSON as a response:\n\n```\nhttp://cleverna.me/_header\n```\n\nThis is great for handling the first request server-side and then updating content with a client-side library.\n\n\n#### Should I use a citizen include or a view partial?\n\ncitizen includes provide rich functionality, but they do have limitations and can be overkill in certain situations.\n\n* **Do you only need to share a chunk of markup across different views?** Use a standard view partial as defined by whatever template engine you're using. The syntax is easy and you don't have to create a full MVC pattern like you would with a citizen include.\n* **Do you need to loop over a chunk of markup to render a data set?** The server processes citizen includes and returns them as fully-rendered HTML (or JSON), not compiled templates. You can't loop over them and inject data like you can with view partials. However, you can build an include that returns a complete data set and view.\n* **Do you need the ability to render different includes based on logic?** citizen includes can have multiple actions and views because they're full MVC patterns. Using a citizen include, you can call different actions and views based on logic and keep that logic in the controller where it belongs. Using view partials would require registering multiple partials and putting the logic in the view template.\n* **Do you want the include to be accessible from the web?** Since a citizen include has a route controller, you can request it via HTTP like any other controller and get back HTML, JSON, or JSONP, which is great for AJAX requests and client-side rendering.\n\n\n### Controller Chaining\n\ncitizen allows you to chain multiple route controllers together in series from a single request using the `next` directive. The requested controller passes its data and rendered view to a subsequent controller, adding its own data and rendering its own view.\n\nYou can string as many route controllers together in a single request as you'd like. Each route controller will have its data and view output stored in the `params.route.chain` object.\n\n```js\n// The index controller accepts the initial request and hands off execution to the article controller\nexport const handler = async (params) => {\n  let user = await app.models.user.getUser({ userID: params.url.userID })\n\n  return {\n    local: {\n      user: user\n    },\n\n    // Shorthand for next is a string containing the pathname to the route controller.\n    // URL paramaters in this route will be parsed and handed to the next controller.\n    next: '/article/My-Article/id/5'\n\n    // Or, you can be explicit, but without parameters\n    next: {\n      // Pass this request to app/controllers/routes/article.js\n      controller: 'article',\n\n      // Specifying the action is optional. The next controller will use its default action, handler(), unless you specify a different action here.\n      action: 'handler',\n\n      // Specifying the view is optional. The next controller will use its default view unless you tell it to use a different one.\n      view: 'article'\n    }\n\n    // You can also pass custom directives and data.\n    doSomething: true\n  }\n}\n```\n\nEach controller in the chain has access to the previous controller's context and views. The last controller in the chain provides the final rendered view. A layout controller with all your site's global elements is a common use for this.\n\n```js\n// The article controller does its thing, then hands off execution to the _layout controller\nexport const handler = async (params, request, response, context) => {\n  let article = await getArticle({ id: params.url.id })\n\n  // The context from the previous controller is available to you in the current controller.\n  if ( context.doSomething ) {  // Or, params.route.chain.index.context\n    await doSomething()\n  }\n\n  return {\n    local: {\n      article: article\n    },\n    next: '/_layout'\n  }\n}\n```\n\nThe rendered view of each controller in the chain is stored in the `route.chain` object:\n\n```html\n<!-- index.html, which is stored in route.chain.index.output -->\n<h1>Welcome, ${local.user.username}!</h1>\n\n<!-- article.html, which is stored in route.chain.article.output -->\n<h1>${local.article.title}</h1>\n<p>${local.article.summary}</p>\n<section>${local.article.text}</section>\n```\n\n\nThe layout controller handles the includes and renders its own view. Because it's the last controller in the chain, this rendered view is what will be sent to the client.\n\n```js\n// _layout controller\n\nexport const handler = async (params) => {\n  return {\n    include: {\n      _head: '/_head',\n      _header: {\n        controller: '_header',\n        action: params.cookie.username ? 'authenticated' : 'handler'\n      },\n      _footer: '/_footer\n    }\n  }\n}\n```\n\n&nbsp;\n\n```html\n<!-- _layout.html -->\n<!doctype html>\n<html>\n  ${include._head}\n  <body>\n    ${include._header}\n    <main>\n      <!-- You can render each controller's view explicitly -->\n      ${route.chain.index.output}\n      ${route.chain.article.output}\n\n      <!-- Or, you can loop over the route.chain object to output the view from each controller in the chain -->\n      ${Object.keys(route.chain).map( controller => { return route.chain[controller].output }).join('')}\n    </main>\n    ${include._footer}\n  </body>\n</html>\n```\n\nYou can skip rendering a controller's view in the chain by setting the `view` directive to false:\n\n```js\n// This controller action won't render a view\nexport const handler = async () => {\n  return {\n    view: false,\n    next: '/_layout'\n  }\n}\n```\n\nTo bypass `next` in a request, add `/direct/true` to the URL.\n\n```\nhttp://cleverna.me/index/direct/true\n```\n\nThe requested route controller's `next` directive will be ignored and its view will be returned to the client directly.\n\n\n### Default Layout\n\nAs mentioned in the config section at the beginning of this document, you can specify a default layout controller in your config so you don't have to insert it at the end of every controller chain:\n\n```json\n{\n  \"citizen\": {\n    \"layout\": {\n      \"controller\": \"_layout\",\n      \"view\":       \"_layout\"\n    }\n  }\n}\n```\n\nIf you use this method, there's no need to use `next` for the layout. The last controller in the chain will always hand the request to the layout controller for final rendering.\n\n\n## Performance\n\ncitizen provides several ways for you to improve your app's performance, most of which come at the cost of system resources (memory or CPU).\n\n\n### Caching Requests and Controller Actions\n\nIn many cases, a requested URL or route controller action will generate the same view every time based on the same input parameters, so it doesn't make sense to run the controller chain and render the view from scratch for each request. citizen provides flexible caching capabilities to speed up your server side rendering via the `cache` directive.\n\n\n#### cache.request\n\nIf a given request (URL) will result in the exact same rendered view with every request, you can cache that request with the `request` property. This is the fastest cache option because it pulls a fully rendered view from memory and skips all controller processing.\n\nLet's say you chain the index, article, and layout controllers like we did above. If you put the following cache directive in your index controller, the requested URL's response will be cached and subsequent requests will skip the index, article, and layout controllers entirely.\n\n```js\nreturn {\n  next: '/article',\n  cache: {\n    request: true\n  }\n}\n```\n\nFor the request cache directive to work, it must be placed in the first controller in the chain; in other words, the original requested route controller (index in this case). It will be ignored in any subsequent controllers.\n\nThe URL serves as the cache key, so each of the following URLs would generate ","readmeFilename":"README.md","users":{"s8jmcman":true}}