1.6.2 • Published 3 years ago

code-swagger-generator v1.6.2

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

installation

npm i -g code-swagger-generator

usage

code-swagger-generator [project-name] [base-url] [project-folder-path] [output-file-path]

use apidocjs for route documentation formats, and automatically have your docs converted to swagger

model examples

/**
 * @apiDefine ListQueryParams
 * Handles querying on a particular collection
 * @apiParam {Number} [_limit] limit response length
 * @apiParam {Number} [_skip] skip the given amount of data
 * @apiParam {String} [_sort] sort by data eg "createdAt:1" in ASC, "createdAt:-1" in DESC
 * @apiParam {String} [_populate] populate dependencies eg 'user'
 * @apiParam {Boolean} [_count] if specified, returns the number count of query result
 * @apiParam {String} [_select] select only specified properties eg 'username,email' exclude '-email,-password'
 */

/**
* @apiDefine PopulateQueryParam
* @apiParam {String} [_populate] populate dependencies eg 'user'
* @apiParam {String} [_select] select only specified properties eg 'username,email' exclude '-email,-password'
*/

/**
 * @apiDefine Authentication
 * Handles requests that require authentication
 * @apiHeader {String} [authorization] jwt authorization token
 * @apiHeaderExample {json} Authorization-Example:
 *     {
 *       "Authorization": "Bearer {jwt token}"
 *     }
 */

/**
* @apiDefine OtherModelParams
* @apiParam {String} [createdAt] date of creation
* @apiParam {String} [updatedAt] date of last update
*/

/**
 * @apiModel ModelCreateDestinationAccountManager
 * @apiParam {String="CRYPTO,FIAT"} [type] type property
 * @apiParam {String} account account property
 * @apiParam {String} accountReservation accountReservation property
 * @apiParam {String} refId refId property
 * @apiParam {Any} [data] data(Mixed) property
 * @apiParam {String} [currentPayment] currentPayment(ObjectId) property
 * @apiParam {Boolean} [acquired] acquired property
 */

/**
 * @apiModel ModelUpdateDestinationAccountManager
 * @apiParam {String="CRYPTO,FIAT"} [type] type property
 * @apiParam {String} [account] account property
 * @apiParam {String} [accountReservation] accountReservation property
 * @apiParam {String} [refId] refId property
 * @apiParam {#ModelDestinationAccountManager} [data] data(Mixed) property
 * @apiParam {String} [currentPayment] currentPayment(ObjectId) property
 * @apiParam {Boolean} [acquired] acquired property
 */

/**
 * @apiDefine ModelDestinationAccountManager
 * @apiSuccess {String="CRYPTO,FIAT"} type type property
 * @apiSuccess {String} account account property
 * @apiSuccess {String} accountReservation accountReservation property
 * @apiSuccess {String} refId refId property
 * @apiSuccess {Any} data data(Mixed) property
 * @apiSuccess {String} currentPayment currentPayment(ObjectId) property
 * @apiSuccess {Boolean} acquired acquired property
 */

route description format (github Markdown)

/**
* @apiDescribe Description
# Header1
This is a multi line md description
# Header2
It would be used in the docs as md
*/

route examples

/**
 * @api {get} /crypto-pay/destinationAccountManagers/:id Get destinationAccountManager by id
 * @apiName GetDestinationAccountManager
 * @apiGroup DestinationAccountManager
 *
 * @apiUse Authentication
 * @apiParam {String} id id of destinationAccountManager to retrieve
 * @apiParam {String} [populate] populate dependencies eg "user,..."
 * @apiParam {String} name name of destinationAccountManager to retrieve
 * @apiParam {String} age age of destinationAccountManager to retrieve
 * @apiUse PopulateQueryParam 
 * @apiResponse 200 #ModelDestinationAccountManager success response
 * @apiResponse 404 #ModelCreateDestinationAccountManager error response
 */

 /**
 * @api {put} /crypto-pay/destinationAccountManagers/:id Update destinationAccountManager by id
 * @apiName UpdateDestinationAccountManager
 * @apiDescription #Description
 * @apiGroup DestinationAccountManager
 *
 * @apiUse Authentication
 * @apiParam {String} id id of destinationAccountManager to retrieve
 * @apiParam {String} name name of destinationAccountManager to retrieve
 * @apiParam {String} age age of destinationAccountManager to retrieve
 * @apiBody default #ModelCreateDestinationAccountManager
 * @apiConsumes application/json
 * @apiProduces application/json
 * @apiResponse 200 #ModelDestinationAccountManager success response
 * @apiResponse 404 #ModelCreateDestinationAccountManager error response
 */

disclaimer

this tool is still under development, user's descretion is adviced

1.6.2

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.5.0

3 years ago

1.4.0

3 years ago

1.3.0

3 years ago

1.2.0

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago