Deploy: DocfyUiModule vs standalone

Sirva a partir da mesma app NestJS que expõe a API, ou como bundle estático em qualquer static host.

Instalação

bash
npm install docfy-ui

Esse pacote entrega um bundle estático pré-buildado (dist/): não há código server-side para instalar em um backend Node. Se você está usando nestjs-docfy, o DocfyUiModule.setup() dele já envolve isso por você; senão, sirva a pasta dist/ com qualquer servidor de arquivos estáticos.

Via DocfyUiModule.setup()

O setup mais simples se seu backend é NestJS: deixe o nestjs-docfy montar esse pacote para você.

ts
import { NestFactory } from "@nestjs/core";
import { SwaggerModule, DocumentBuilder } from "@nestjs/swagger";
import { DocfyUiModule } from "nestjs-docfy";

const app = await NestFactory.create(AppModule);

DocfyUiModule.setup("/docs", app); // before SwaggerModule.setup

const document = SwaggerModule.createDocument(app, new DocumentBuilder().build());
SwaggerModule.setup("api", app, document); // exposes /api-json, which docfy-ui fetches by default

await app.listen(3000);

Visite /docs: nenhuma configuração adicional necessária.

Standalone (estático)

Sem nestjs-docfy, build e sirva os assets estáticos você mesmo e aponte para qualquer documento OpenAPI:

bash
npm run build   # in this package, or use the prebuilt dist/ from npm

Sirva dist/ com qualquer static host (ServeStaticModule do NestJS, Nginx, S3 + CloudFront, etc.), ao lado ou na frente da API que expõe o spec.

Apontando para um spec remoto

Se o spec está em outra origin, use o override ?spec=<url> (veja Configuração).