@8select/serverless-plugin-api-docs
v2.0.0
Published
serverless plugin that generates docs function to return swagger ui
Downloads
12
Readme
serverless-plugin-api-docs
Work with SWAGGER documentation for Serverless v1.0 projects.
A serverless plugin to automatically create a lambda function which returns the
swagger-ui HTML based on the given swagger spec JSON file GET /docs
=> swagger-ui
Install
using npm
:
npm install --save-dev @8select/serverless-plugin-api-docs
or yarn
:
yarn add -D @8select/serverless-plugin-api-docs
Add the plugin to your serverless.yml
file:
plugins:
- serverless-plugin-api-docs
Prerequisites
Download and host swagger-ui library files e.g. with S3
- swagger-ui.css
- swagger-ui-bundle.js
- swagger-ui-standalone-preset.js
Configuration
custom:
documentation:
contentUrl: '<URL_TO_YOUR_HOSTED_SWAGGER_UI_FILES>' # REQUIRED
name: '<your_custom_lambda_function_name>' # OPTIONAL - default = 'docs'
To load your swagger.json
you need to add a resolve.alias
.
E.g. for webpack
:
Assupmtion:
<root>
|
|-docs - REST API swagger spec & definitions
| swagger.json
| webpack.config.json
module.exports = {
// [...],
resolve: {
alias: {
PATH_TO_SWAGGER_SPEC: path.resolve(__dirname, 'docs/swagger.json'),
},
},
// [...],
}