{"_id":"@amiadeveloper/express-swagger-specs-generator","_rev":"1-a879c0be552deb5acf134ec7a1925473","name":"@amiadeveloper/express-swagger-specs-generator","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@amiadeveloper/express-swagger-specs-generator","version":"1.0.0","description":"Package to generate the OpenAPI 2.0 swagger specs automatically for the given model in command line arguments.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"bin":{"ssg":"./bin/ssg.js"},"repository":{"type":"git","url":"git+ssh://git@github.com/naveenagarwal/express-swagger-specs-generator.git"},"keywords":["express","swagger","swagger-specs","swagger-specs-generator","generator","model-specs-generator","CRUD-specs-generator","OpenAPI","OpenAPI2.0","swagger-api-specs"],"author":{"name":"Naveen Agarwal"},"license":"Apache-2.0","bugs":{"url":"https://github.com/naveenagarwal/express-swagger-specs-generator/issues"},"homepage":"https://github.com/naveenagarwal/express-swagger-specs-generator#readme","dependencies":{"command-line-args":"^5.1.1","shelljs":"^0.8.3","swagger-jsdoc":"^3.4.0"},"gitHead":"5838b3f9cc61428a7590a2045bca0fe25cc765db","_id":"@amiadeveloper/express-swagger-specs-generator@1.0.0","_nodeVersion":"10.15.3","_npmVersion":"6.11.3","dist":{"integrity":"sha512-/H65/BRWgdrl6OierhX3FiFjCOqoyHou/TKTnO+yPXItpxR2jGi+BQqQm78RvTq9k2yzc/KEySIrihKCuDYfPw==","shasum":"c836f598704f8ad482213669cdaa45c216079203","tarball":"https://registry.npmjs.org/@amiadeveloper/express-swagger-specs-generator/-/express-swagger-specs-generator-1.0.0.tgz","fileCount":10,"unpackedSize":10583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdmBjMCRA9TVsSAnZWagAAl8cQAJwrKyRNGPIOj1zvAFp6\nJrZcdeigDrVtXfDEZmsX6Six3QPxT7Mmka0xOoOCJo6VdUpjdxHmR29Bmzw8\nLou7eZK9+WwSvrZCRTJRuTvIlMiaAJxvCkwRlsL82yS+ydto+kCVPktEpIbT\n2NsPGBpYy3U0z7A5Y+Z4XbF4ODgY2bCtJx3f4gHjg6DuNQ1wNJxptKVDVvkq\nkJfhUDN3x8alJcrVkNmo7mIuiemh9Q60xyaWyJDfzVI0ZzAVmPCGf0hI1w43\ntCXcEPLDV11FlQZyPhZQjBLhUHd8bF6salYRBU2kKIlmIju+Vj3cTZWkvjnS\nkUX75WqBAiwPjdUebdYl61gMGCr2MJtAdhupEjr25PzLyTcd3xGWwuzjygMR\nrXWVVn2NwHkQ/O1DCz++wLWnOAfTo5gnKXjCDryl+3VIlaMdqaIwr5Ga1TuW\nloZK7vG7zyj2C7EavKrLJF3u7O7AreeJn90g0m2ldaeNRLk/ZsxegcW1GTm8\nBpRbOwsdGFi/7wYdY732ABP+YIAkFQYXRZxox1y/W9pmTIH7E28+Jvr4axkQ\nQNnkqa2he0uIdi9gJCGyTjffkdopxljqTmyfdM/fELKNpQ5WzVokJt6BDUp+\ng4TR4EbgxLBAijLitSmjzIxve2SlOTmY0P50y76RiBk3gN2WIEpbuqI0qXl2\noK94\r\n=j+uk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMLLFkuo5AfTZUMlTaxHzRkcXiYlw9RXFqt4hE+MTTEgIhAK2+9+wU82pDO8zHgrKW3qGhRpB9T+itoFixJLLV3Nsb"}]},"maintainers":[{"name":"amiadeveloper","email":"naveenagarwal287@gmail.com"}],"_npmUser":{"name":"amiadeveloper","email":"naveenagarwal287@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/express-swagger-specs-generator_1.0.0_1570248907429_0.07096063988549672"},"_hasShrinkwrap":false}},"time":{"created":"2019-10-05T04:15:07.226Z","1.0.0":"2019-10-05T04:15:07.599Z","modified":"2022-04-04T13:48:28.096Z"},"maintainers":[{"name":"amiadeveloper","email":"naveenagarwal287@gmail.com"}],"description":"Package to generate the OpenAPI 2.0 swagger specs automatically for the given model in command line arguments.","homepage":"https://github.com/naveenagarwal/express-swagger-specs-generator#readme","keywords":["express","swagger","swagger-specs","swagger-specs-generator","generator","model-specs-generator","CRUD-specs-generator","OpenAPI","OpenAPI2.0","swagger-api-specs"],"repository":{"type":"git","url":"git+ssh://git@github.com/naveenagarwal/express-swagger-specs-generator.git"},"author":{"name":"Naveen Agarwal"},"bugs":{"url":"https://github.com/naveenagarwal/express-swagger-specs-generator/issues"},"license":"Apache-2.0","readme":"# express-swagger-specs-generator\nPackage to generate the OpenAPI 2.0 swagger specs automatically for the given model in command line arguments.\n\nThis is sub-package for [express-scaffold](https://www.npmjs.com/package/@naveen.agarwal/express-scaffold). It is used to to generate the api-specs for the controller route generated via [express-scaffold](https://www.npmjs.com/package/@naveen.agarwal/express-scaffold).\n\nIt is opiniated and generates the API-specs based on the APIs generated via the express-scaffold package. However, it can be used as standalone package as well either via *command-line* or *in-code*.\n\n**Usage**\n\n1. Command Line\n\n```\nnpm i --save-dev @amiadeveloper/express-swagger-specs-generator\nnpx ssg --name User --filepath </full/path/to/attributes.json> --force\n```\n\n2. In code\n\n```\nconst Swagger = rquire('@amiadeveloper/express-swagger-specs-generator');\nconst attributes =  [{}] // see the example below for attrutes.json\nconst path = process.cwd() + '/api-specs';\n\n// create the swagger specs from the file\nconst swagger = new Swagger(options.name, attributes, path);\nswagger.init();\nswagger.generateSpecFile(force); // force can be true or false\nswagger.generateSwaggerJSONFile();\n```\n\nThere will be a folder named *api-specs* int the current directory. It will have a *swagger.json* file which can be used with [swagger-ui-express](https://www.npmjs.com/package/swagger-ui-express)\n\n*Example attributes.json*\n```\n[\n    {\n        \"name\": \"firstname\",\n        \"type\": \"string\",\n        \"minLength\": 3,\n        \"maxLength\": 20,\n        \"pattern\": \"^\\\\d{3}-\\\\d{2}-\\\\d{4}$\",\n        \"format\": \"date\"\n    },\n    {\n        \"name\": \"age\",\n        \"type\": \"integer\",\n        \"minimum\": 1,\n        \"maximum\": 100,\n        \"format\": \"double\"\n    },\n    {\n        \"name\": \"registered\",\n        \"type\": \"boolean\"\n    },\n]\n\n<!-- All the above values to the keys are same as they are supported by swagger data-types -->\n```\n\n**Limitations**\nIt can be only be used to create api-sepcs for a flat schema.","readmeFilename":"README.md"}