Deploy: DocfyUiModule vs standalone

Sers-le depuis la même app NestJS qui expose l'API, ou comme bundle statique sur n'importe quel hébergeur statique.

Installation

bash
npm install docfy-ui

Ce package embarque un bundle statique pré-construit (dist/) : il n'y a aucun code côté serveur à installer sur un backend Node. Si tu utilises nestjs-docfy, son DocfyUiModule.setup() gère déjà tout ça pour toi ; sinon, sers le dossier dist/ avec n'importe quel serveur de fichiers statiques.

Via DocfyUiModule.setup()

La configuration la plus simple si ton backend est NestJS : laisse nestjs-docfy monter ce package pour toi.

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);

Va sur /docs : aucune configuration supplémentaire nécessaire.

Autonome (statique)

Sans nestjs-docfy, construis et sers les assets statiques toi-même et pointe-les vers n'importe quel document OpenAPI :

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

Sers dist/ avec n'importe quel hébergeur statique (ServeStaticModule de NestJS, Nginx, S3 + CloudFront, etc.), à côté ou devant l'API qui expose la spec.

Pointer vers une spec distante

Si la spec vit sur une origine différente, utilise la surcharge ?spec=<url> (voir Configuration).