{"_id":"swagger-express-router","_rev":"7-1c55893b4028f0474e8397d2025d73a4","name":"swagger-express-router","description":"Swagger Express Router","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"swagger-express-router","version":"1.0.0","description":"Swagger Express Router","main":"./lib/index.js","files":["lib","package.json","README.md"],"keywords":["swagger","express","routes","API","REST","documentation"],"scripts":{"express":"npm run express4.1.0 && npm run express4.7.0 && npm run express4.14.0 && npm run express3.4.0 && npm run express3.1.0","express4.1.0":"cd ./spec/integration/express4.1.0 && npm install","express4.7.0":"cd ./spec/integration/express4.7.0 && npm install","express4.14.0":"cd ./spec/integration/express4.14.0 && npm install","express3.4.0":"cd ./spec/integration/express3.4.0 && npm install","express3.1.0":"cd ./spec/integration/express3.1.0 && npm install","test":"node node_modules/mocha/bin/mocha spec/**/*.spec.js --recursive","jshint":"npm run jshint-lib","jshint-lib":"node node_modules/jshint/bin/jshint --config ./.jshintrc ./lib --verbose"},"private":false,"engines":{"node":">= 4.2.0"},"dependencies":{"ramda":"0.17.1"},"devDependencies":{"chai":"3.2.0","jshint":"2.8.x","mocha":"2.3.4","sinon":"1.17.2","supertest":"*"},"author":{"name":"Stephen Scott","email":"scottie1984@gmail.com"},"repository":{"type":"git","url":"git+ssh://git@github.com/scottie1984/swagger-express-router.git"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/scottie1984/swagger-express-router/issues"},"homepage":"https://github.com/scottie1984/swagger-express-router","gitHead":"3799d1d076878866e53792ab262204388ca3f29a","_id":"swagger-express-router@1.0.0","_shasum":"e49435f63efde9fdf1aebf73051869c792324008","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.1","_npmUser":{"name":"scottie1984","email":"scottie1984@gmail.com"},"dist":{"shasum":"e49435f63efde9fdf1aebf73051869c792324008","tarball":"https://registry.npmjs.org/swagger-express-router/-/swagger-express-router-1.0.0.tgz","integrity":"sha512-muS4kkuEtt838sA+f4T0arruZVayaFahu+7CYKT9dStTaUk56I5hK2KedB128cxVp3y5SIdmFtVU+OR79kgJwA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0VGugjR6rvqfihDIocvznJjkrYT7ePtOQyWm+H8fsvAIgHfN4MXN6v05Th7jYJnIvZb+Cfs4fH+zw2qKpZgZchU4="}]},"maintainers":[{"name":"scottie1984","email":"scottie1984@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/swagger-express-router-1.0.0.tgz_1469981399886_0.7158346038777381"},"directories":{}},"1.0.1":{"name":"swagger-express-router","version":"1.0.1","description":"Swagger Express Router","main":"./lib/index.js","keywords":["swagger","express","routes","API","REST","documentation"],"scripts":{"express":"npm run express4.1.0 && npm run express4.7.0 && npm run express4.14.0 && npm run express3.4.0 && npm run express3.1.0","express4.1.0":"cd ./spec/integration/express4.1.0 && npm install","express4.7.0":"cd ./spec/integration/express4.7.0 && npm install","express4.14.0":"cd ./spec/integration/express4.14.0 && npm install","express3.4.0":"cd ./spec/integration/express3.4.0 && npm install","express3.1.0":"cd ./spec/integration/express3.1.0 && npm install","test":"node node_modules/mocha/bin/mocha spec/**/*.spec.js --recursive","jshint":"npm run jshint-lib","jshint-lib":"node node_modules/jshint/bin/jshint --config ./.jshintrc ./lib --verbose"},"private":false,"engines":{"node":">= 4.2.0"},"dependencies":{"ramda":"0.29.0"},"devDependencies":{"chai":"3.2.0","jshint":"2.8.x","mocha":"2.3.4","sinon":"1.17.2","supertest":"*"},"author":{"name":"Stephen Scott","email":"scottie1984@gmail.com"},"repository":{"type":"git","url":"git+ssh://git@github.com/scottie1984/swagger-express-router.git"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/scottie1984/swagger-express-router/issues"},"homepage":"https://github.com/scottie1984/swagger-express-router","gitHead":"10f64b081360b7d6e4f7681512a5cbbf028c3522","_id":"swagger-express-router@1.0.1","_nodeVersion":"18.0.0","_npmVersion":"8.6.0","dist":{"integrity":"sha512-naRvW7c90piqnIudXeJ+61/Fsw8VJMpsUXyzr3Rl1CnI/s/zpS9D3+1DCwptztSkib/FfDwGmgpjaw9wR/O8Yw==","shasum":"6904ada48936b3dfbee45c8571a7051bddc8c56c","tarball":"https://registry.npmjs.org/swagger-express-router/-/swagger-express-router-1.0.1.tgz","fileCount":5,"unpackedSize":6306,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCLwrio46FXnUTl/iGDdw3/UKwj9hFlB2CO12mVtZ+iAIhALO9N75+K5svQjL3oqkLgezsAms8eSgR63oA4daq0QYi"}]},"_npmUser":{"name":"scottie1984","email":"scottie1984@gmail.com"},"directories":{},"maintainers":[{"name":"scottie1984","email":"scottie1984@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swagger-express-router_1.0.1_1689926061767_0.39919661258838923"},"_hasShrinkwrap":false}},"readme":"# Swagger Express Router\n\n[![Build Status](https://travis-ci.org/scottie1984/swagger-express-router.svg?branch=master)](https://travis-ci.org/scottie1984/swagger-express-router)\n![Dependencies](https://david-dm.org/scottie1984/swagger-express-router.svg)\n[![npm version](https://badge.fury.io/js/swagger-express-router.svg)](http://badge.fury.io/js/swagger-express-router)\n\nTakes a swagger JSON document and sets up express HTTP routes bound to middleware functions. All routing is therefore driven from the swagger documentation.\n\n## Usage\n\nIn app's `package.json`\n\n    \"swagger-express-router\": \"latest\" // or desired version\n\nThe following sample code will set up a **GET** endpoint with URL **http://localhost:8000/api/swagger/v1/test1** bound to the function named **swagTest** in the middleware named **middleware-name1**\n\nSwagger document `swagger.json`\n\n```json\n{\n   \"swagger\": \"2.0\",\n   \"info\": {\n     \"title\": \"\",\n     \"description\": \"\",\n     \"version\": \"1.0\"\n   },\n   \"produces\": [\"application/json\"],\n   \"host\": \"localhost:8000\",\n   \"basePath\": \"/api/swagger/v1\",\n   \"paths\": {\n     \"/test1\": {\n       \"get\": {\n         \"x-swagger-router-controller\": \"middleware-name1\",\n         \"operationId\": \"swagTest\",\n         \"tags\": [\"/test\"],\n         \"description\": \"\",\n         \"parameters\": [],\n         \"responses\": {}\n       }\n     }\n   }\n}\n```\nExpress setup `app.js`\n```javascript\nconst app = express();\nconst swagger = require('swagger-express-router');\nconst swaggerDocument = require('./swagger.json');\nconst useBasePath = true; //whether to use the basePath from the swagger document when setting up the routes (defaults to false)\nconst middlewareObj = {\n    'middleware-name1': require('./middleware/middleware-name1'),\n    'middleware-name2': require('./middleware/middleware-name2')\n};\nswagger.setUpRoutes(middlewareObj, app, swaggerDocument, useBasePath);\n```\n\nMiddleware example `middleware/middleware-name1.js`\n```javascript\n'use strict';\n\nconst swagTest = (req, res) => res.send('Blah1');\n\nmodule.exports = {\n  swagTest\n};\n```\n\n## Test\n\nThis module should work with all versions of Express 3 & Express 4. It has been tested specifically tested against express versions '4.14.0', '4.7.0', '4.1.0', '3.4.0', '3.1.0'\n\n## Requirements\n\n* Node v4.2 or above\n* Express 3 or above","maintainers":[{"name":"scottie1984","email":"scottie1984@gmail.com"}],"time":{"modified":"2023-07-21T07:54:22.138Z","created":"2016-07-31T16:10:01.926Z","1.0.0":"2016-07-31T16:10:01.926Z","1.0.1":"2023-07-21T07:54:21.953Z"},"homepage":"https://github.com/scottie1984/swagger-express-router","keywords":["swagger","express","routes","API","REST","documentation"],"repository":{"type":"git","url":"git+ssh://git@github.com/scottie1984/swagger-express-router.git"},"author":{"name":"Stephen Scott","email":"scottie1984@gmail.com"},"bugs":{"url":"https://github.com/scottie1984/swagger-express-router/issues"},"license":"BSD-2-Clause","readmeFilename":"README.md","users":{"ivan.marquez":true,"ngpvnk":true,"mano.rajesh":true}}