@readyapi/express-api-reference
v0.0.1
Published
A middleware for using the Ready API reference with Express
Downloads
5
Readme
Readyapi Express API Reference Plugin
This middleware provides an easy way to render a beautiful API reference based on an OpenAPI/Swagger file with Express.
Installation
npm install @readyapi/express-api-reference
Usage
Set up Express and pass an OpenAPI/Swagger spec to the apiReference
middleware:
Wait, but how do we get the OpenApiSpecification? 🤔 There are multiple ways to generate an OpenAPI/Swagger file for Express. The most popular way is to use
swagger-jsdoc
.
import { apiReference } from '@readyapi/express-api-reference'
const OpenApiSpecification =
/* … */
app.use(
'/reference',
apiReference({
spec: {
content: OpenApiSpecification,
},
}),
)
If you’re serving an OpenAPI/Swagger file already, you can pass an URL, too:
import { apiReference } from '@readyapi/express-api-reference'
app.use(
'/reference',
apiReference({
spec: {
url: '/openapi.json',
},
}),
)
The Express middleware takes our universal configuration object, read more about configuration in the core package README.
Themes
The middleware comes with a custom theme for Express. You can use one of the other predefined themes (alternate
, default
, moon
, purple
, solarized
) or overwrite it with none
. All themes come with a light and dark color scheme.
import { apiReference } from '@readyapi/express-api-reference'
app.use(
'/reference',
apiReference({
theme: 'purple',
spec: {
content: OpenApiSpecification,
},
}),
)
Custom CDN
You can use a custom CDN ,default is https://cdn.jsdelivr.net/npm/@readyapi/api-reference
.
import { apiReference } from '@readyapi/express-api-reference'
app.use(
'/reference',
apiReference({
cdn: 'https://cdn.jsdelivr.net/npm/@readyapi/api-reference',
spec: {
content: OpenApiSpecification,
},
}),
)