joi-openapi-generator

Generate OpenAPI specification from koa-joi-router

Usage no npm install needed!

<script type="module">
  import joiOpenapiGenerator from 'https://cdn.skypack.dev/joi-openapi-generator';
</script>

README

OpenAPI generator

This is a tool for generating OpenAPI schemas from koa-joi-router definitions. It is compatible with joi 17.x.x.

Usage

You can create koa-joi-router as usual and provide some metadata in route definitions.

Router meta options:

  • name: string - name of the route (will be used as operationId)
  • group?: string
  • version
  • tags
    • assigned tags to the route can be matched during the build
    • tags with prefix openapi- will be included in tags property in the operation object
    • reserved tags: ignore-route

Moreover you can provide some meta options in Joi validation schemas.

Joi meta options:

  • name: string - when set the type will be extracted and exported with this name
  • deprecated: boolean

Generator also supports many Joi native features, such as examples, description, key presence or various flags.