Deploy: DocfyUiModule vs standalone
Отдавайте его из того же приложения NestJS, что публикует API, либо как статическую сборку на любом хостинге статики.
Установка
npm install docfy-uiВ пакете лежит уже собранная статика (dist/): ставить какой-то серверный код на бэкенд Node не нужно. Если вы работаете с nestjs-docfy, его DocfyUiModule.setup() уже всё это оборачивает. Если нет, отдайте папку dist/ любым сервером статики.
Через DocfyUiModule.setup()
Самый простой вариант, когда бэкенд на NestJS: пусть nestjs-docfy подключит этот пакет за вас.
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);Откройте /docs, настраивать больше нечего.
Отдельно (статика)
Без nestjs-docfy соберите и отдайте статику сами, указав любой документ OpenAPI:
npm run build # in this package, or use the prebuilt dist/ from npmОтдавайте dist/ любым хостингом статики (ServeStaticModule из NestJS, Nginx, S3 с CloudFront и так далее), рядом с API, который публикует спецификацию, или перед ним.
Как указать на удалённую спецификацию
Если спецификация лежит на другом origin, воспользуйтесь переопределением ?spec=<url> (см. «Настройку»).