{"_id":"koa-resource-router","_rev":"18-f6c8d6c5e4ff557c4211db206312bde8","name":"koa-resource-router","description":"RESTful resource routing for koa.","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.1.0","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"~0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.1.0","dist":{"shasum":"ff796e2e167898dc345a078b202b2764221dafb2","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.1.0.tgz","integrity":"sha512-x+Tx5JQW7RMSXtkTPm6F7T643SH9fHgS2ipcgIolUYh4vb3/7Dq+N6o9oW18TcIanI7pRzAWTXEOX5heZYvkmg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcyLe5UvB+rQCv1k7xGbjjqcJsG5Yen2wPFU8u1oU9kQIgYLZgZ+Lo0djs9yRFaqJDA4+B1j6a+O5ZnMr40CjtjM4="}]},"_from":".","_npmVersion":"1.3.15","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.2.0":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.2.0","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"~0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.2.0","dist":{"shasum":"fd64374dc3a7fa45d5cfc6c878cb86773b5889e9","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.2.0.tgz","integrity":"sha512-PHzGuQFvv9uTXmLW9JNhEj/u8oskS1QewAtl5Q7UP43q6Bbx2WTxv0fH4ycBPlrORK4VmDsJGkPLwqI7G8vcGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICmCYMnD7yS1ysEaV8GF4PnvwQY9mbyYm8GsgKYVQQ3WAiEAoXICPAc+JgiO0H1Hs7f/l9eI6XYrUbW36YgJbbp/zL8="}]},"_from":".","_npmVersion":"1.3.15","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.3.0":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.3.0","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"~0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.3.0","dist":{"shasum":"22c939496307ed5d3cf48aa6a8bd7ddcfee21278","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.3.0.tgz","integrity":"sha512-Otm7Qf/Gs4skD7CKxmoyjXsz5Zi08SjRUnIiZp3XCG3fvuD+DhUTsmP4BoLnVUjS56r7lssCY1jYJM48IzQ3ig==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH3JBvv6TTHI5vGCCdYJ59OOmgc+3v+qAPD7QsV20ZzlAiEAmZkgg1/OIdyecCYInKZp/BrVNLf1Lq+64DtXL52FXO8="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.3.1":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.3.1","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"^0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.3.1","dist":{"shasum":"a22dca5c894b5a986e65b0ca6ffcaac1250c2a9a","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.3.1.tgz","integrity":"sha512-3YH7WZnlrnMo+WTMYzIg3CK8CrFxkA+XKROctIleEPWf7lOwxarhbmJpfzWEgyyc8tqpje67JYB5xURwnm9osw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE8Psh59SAB8/CKzGpUk41c3El2waIvbjemFEdBrHLi2AiEA5X/oXtw3qnTIkojAUVsBqR+4QJ1lj9zWV984YS9Cig4="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.3.2":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.3.2","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"^0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.3.2","dist":{"shasum":"a3e61fd79ee30f8db4eb35432a259a642e30e212","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.3.2.tgz","integrity":"sha512-8tS5GOT1/SvEB39fMbhYGb1B1EgyRs6ExvC6xJtKy8IDh40EtOWg7tF2pZnt+HQApSvE5OCcDrLkdWww4fU3YA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDeC7nfGfIAgYGPF8Pasy4GjgFGFRrHnlS/nWU2ZiewwIhANiw2m/pcJTCPqfThW9RBlKXNOQ4qhI6KEmFRHnZ27ed"}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.3.3":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.3.3","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"^0.7.4","lingo":"0.0.5","path-to-regexp":"0.0.2","defaults":"~1.0.0","koa-compose":"~2.2.0"},"devDependencies":{"koa":"0.3.0","mocha":"1.12.0","should":"1.2.2","supertest":"0.7.1"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.3.3","dist":{"shasum":"b0ed1c57bba91b71f81f65f643da00385d5bd000","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.3.3.tgz","integrity":"sha512-XZEOetm7H/4O81sjL8+I1pYVukSa/DpyoDvrE3YzxoAV1V+FI9r6Ah3Bh6oc65LVQ3+r3aKrWwZjAgYDzPjujg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDpy9kc+7TrVEThOkT6ud9JP6KM1mGbE2pbdEwOdff32AiBCKptaKP6fnuBs0MAc72nL1DkGELNNO3buDtDDZmShzg=="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}]},"0.4.0":{"name":"koa-resource-router","description":"RESTful resource routing for koa.","repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"version":"0.4.0","keywords":["rest","resource","koa","router","middleware"],"main":"./lib/resource.js","dependencies":{"debug":"^2.1.1","defaults":"^1.0.0","koa-compose":"^2.3.0","path-to-regexp":"^1.0.3","pluralize":"^1.1.1"},"devDependencies":{"koa":"^0.15.0","mocha":"^2.1.0","should":"^4.6.1","supertest":"^0.15.0"},"scripts":{"test":"NODE_ENV=test node_modules/mocha/bin/mocha --harmony-generators --reporter spec"},"engines":{"node":"> 0.11.4"},"license":"MIT","gitHead":"ef254939e950e173bb68c0542c2307cfd97d09d1","bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"homepage":"https://github.com/alexmingoia/koa-resource-router","_id":"koa-resource-router@0.4.0","_shasum":"3ffde6e70f25ef5bc1a63a6fd4c033640ceff121","_from":".","_npmVersion":"2.0.0","_npmUser":{"name":"amingoia","email":"talk@alexmingoia.com"},"maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}],"dist":{"shasum":"3ffde6e70f25ef5bc1a63a6fd4c033640ceff121","tarball":"https://registry.npmjs.org/koa-resource-router/-/koa-resource-router-0.4.0.tgz","integrity":"sha512-iGs+MDzJ6Oc8xpulO0FdaxYXTl7bUy1iglQlSVmsYc97pVAUdaUh9w+H+7V3duMVlQCc2P2f0wQ+phzGyB5yKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRTUPbKGZUKyM56/iYMjJQbTx2aqmG3Vc+omZM0eWEhQIhAKAgv1OT731onpcp8ZWUCENQIZtmlkWBGXLR3/a72Yeo"}]}}},"readme":"# koa-resource-router\n\n[![Build Status](https://secure.travis-ci.org/alexmingoia/koa-resource-router.png)](http://travis-ci.org/alexmingoia/koa-resource-router) \n[![Dependency Status](https://david-dm.org/alexmingoia/koa-resource-router.png)](http://david-dm.org/alexmingoia/koa-resource-router)\n[![NPM version](https://badge.fury.io/js/koa-resource-router.png)](http://badge.fury.io/js/koa-resource-router)\n\nRESTful resource routing for [koa](https://github.com/koajs/koa).\n\n* Rails-like REST resource routing.\n* Use multiple middleware for resource actions.\n* Responds to `OPTIONS` requests with allowed methods.\n* Returns `405 Method Not Allowed` when applicable.\n\n## Installation\n\nInstall using [npm](https://npmjs.org):\n\n```sh\nnpm install koa-resource-router\n```\n\n## API\n\n### new Resource(path, actions, options)\n\n```javascript\nvar Resource = require('koa-resource-router');\nvar app = require('koa')();\n\nvar users = new Resource('users', {\n  // GET /users\n  index: function *(next) {\n  },\n  // GET /users/new\n  new: function *(next) {\n  },\n  // POST /users\n  create: function *(next) {\n  },\n  // GET /users/:id\n  show: function *(next) {\n  },\n  // GET /users/:id/edit\n  edit: function *(next) {\n  },\n  // PUT /users/:id\n  update: function *(next) {\n  },\n  // DELETE /users/:id\n  destroy: function *(next) {\n  }\n});\n\napp.use(users.middleware());\n```\n\n### Action mapping\n\nActions are then mapped accordingly:\n\n```javascript\nGET     /users             ->  index\nGET     /users/new         ->  new\nPOST    /users             ->  create\nGET     /users/:user       ->  show\nGET     /users/:user/edit  ->  edit\nPUT     /users/:user       ->  update\nDELETE  /users/:user       ->  destroy\n```\n\n### Overriding action mapping\n\n```javascript\nvar users = new Resource('users', actions, {\n  methods: {\n    update: 'PATCH'\n  }\n});\n```\n\n### Top-level resource\n\nOmit the resource name to specify a top-level resource:\n\n```javascript\nvar root = new Resource(require('./frontpage'));\n```\n\nTop-level controller actions are mapped as follows:\n\n```javascript\nGET     /          ->  index\nGET     /new       ->  new\nPOST    /          ->  create\nGET     /:id       ->  show\nGET     /:id/edit  ->  edit\nPUT     /:id       ->  update\nDELETE  /:id       ->  destroy\n```\n\n### Nesting\n\nResources can be nested using `resource.add()`:\n\n```javascript\nvar forums = new Resource('forums', require('./forum'));\nvar threads = new Resource('threads', require('./threads'));\n\nforums.add(threads);\n```\n\n### Multiple middleware\n\nRun middleware before resource actions by passing middleware functions before\nyour actions:\n\n```javascript\nvar users = new Resource('users', authorize, actions);\n```\n\nRun middleware for specific actions by passing an array:\n\n```javascript\nvar users = new Resource('users', {\n  show: [authorize, function *(next) {\n    // ...\n  }]\n});\n```\n\n## MIT Licensed\n","maintainers":[{"name":"amingoia","email":"talk@alexmingoia.com"}],"time":{"modified":"2022-06-19T09:25:37.599Z","created":"2014-02-03T03:50:24.301Z","0.1.0":"2014-02-03T03:51:29.082Z","0.2.0":"2014-02-03T22:27:27.163Z","0.3.0":"2014-03-15T04:39:46.594Z","0.3.1":"2014-04-22T06:29:39.769Z","0.3.2":"2014-04-22T06:44:35.659Z","0.3.3":"2014-04-27T20:09:04.602Z","0.4.0":"2015-01-20T02:46:12.686Z"},"readmeFilename":"README.md","author":{"name":"Alex Mingoia","email":"talk@alexmingoia.com"},"repository":{"type":"git","url":"https://github.com/alexmingoia/koa-resource-router.git"},"homepage":"https://github.com/alexmingoia/koa-resource-router","keywords":["rest","resource","koa","router","middleware"],"bugs":{"url":"https://github.com/alexmingoia/koa-resource-router/issues"},"license":"MIT","users":{"hoitmort":true}}