Deploy: DocfyUiModule vs standalone
Servilo dalla stessa app NestJS che espone l'API, oppure come bundle statico su qualunque host statico.
Installazione
npm install docfy-uiQuesto pacchetto include un bundle statico pre-costruito (dist/): non c'è codice server-side da installare su un backend Node. Se usi nestjs-docfy, il suo DocfyUiModule.setup() lo avvolge già per te; altrimenti, servi la cartella dist/ con un qualsiasi server di file statici.
Tramite DocfyUiModule.setup()
La configurazione più semplice se il tuo backend è NestJS: lascia che nestjs-docfy monti questo pacchetto per te.
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);Visita /docs: non serve altra configurazione.
Standalone (statico)
Senza nestjs-docfy, costruisci e servi tu stesso gli asset statici e puntali verso un qualsiasi documento OpenAPI:
npm run build # in this package, or use the prebuilt dist/ from npmServi dist/ con un qualsiasi host statico (ServeStaticModule di NestJS, Nginx, S3 + CloudFront, ecc.), accanto o davanti all'API che espone la spec.
Puntare a una spec remota
Se la spec vive su un'origine diversa, usa l'override ?spec=<url> (vedi Configurazione).