apidoc-openapi
Generate OpenAPI definition file from apiDoc comments in your source code.
toc
installation
$ npm install @forfuture/apidoc-openapi
usage
source code
It is important to note that this tool supports any programming language that apiDoc supports. However, we shall use JavaScript in our documentation.
The tool expects a certain style of writing your apiDoc comments. For example,
/** * @api * @apiName UpdateUser * @apiGroup Users * @apiDescription Update user's information * * @apiParam * @apiParam * @apiParam * * @apiSuccess (200) * @apiSuccess (200) */
- We have (visually) grouped our comments into 3 groups:
- informational group: identifies and describes the API endpoint.
- parameters group: lists the API parameters e.g query parameters.
- responses group: list the expected responses from the endpoint.
- In the informational group, ensure you provide:
- name (
@apiName
) - group (
@apiGroup
) - description (
@apiDescription
)
- name (
- You MUST provide at least 1 success reponse (
@apiSuccess
) in the responses group. - In the responses group, ensure you provide:
- HTTP status code e.g.
(200)
- HTTP status code e.g.
command-line
You operate the tool from your command-line. For example (in BASH),
$ apidoc-openapi --help Usage: apidoc-openapi [options] Options: -V, --version output the version number -p, --project <path> path to apidoc config file -s, --src <path> path to source files -o, --out <path> path to output file -v, --verbose be verbose -h, --help output usage information
To generate an OpenAPI definition file:
$ apidoc-openapi --project ./apidoc.json --src src/ --out ./openapi.json
license
The MIT License (MIT)
Copyright (c) 2018 Forfuture LLC <we@forfuture.co.ke>