It uses apidoc to convert inline documentation comments into json schema and later convert it to swagger json schema.
Uses the apidoc library.
By putting in line comments in the source code like this in javascript, you will get swagger.json
file which can be served to swagger-ui to generate html overview of documentation.
/api/foo.js
:
/**
* @api {get} /user/id Request User information
* @apiName GetUser
* @apiGroup User
*
* @apiParam {Number} id Users unique ID.
*
* @apiSuccess {String} firstname Firstname of the User.
* @apiSuccess {String} lastname Lastname of the User.
*/
import apidocSwagger from 'apidoc-swagger';
const swagger = apidocSwagger(__dirname + '/../src');
console.log(swagger);
npm install schoolofacceleratedlearning/apidoc-swagger
Current version unlocks most of the basic capabilities of both projects and improvement is in progress.
Have a look at apidoc for full functionality overview and capabilities of apidoc.
To read more about how swagger works refer to swagger-ui and swagger-spec for details of swagger.json
.