What is docfy-ui

Интерфейс документации OpenAPI с прицелом на ИИ, сопутствующий проект для nestjs-docfy. Лёгкий современный справочник API с кнопкой Copy for AI у каждого эндпоинта.

docfy-ui endpoint detail: request/response, Copy for AI, Copy OpenAPI, and multi-language snippets

Мотивация

Почти все интерфейсы OpenAPI сделаны для человека, который глазами просматривает страницу. Для второго читателя документации, то есть для LLM, куда вы вставляете контекст, этот формат не подходит. Скопировать описание эндпоинта обычно значит взять сырой JSON (многословный, забитый $ref и шумом) либо отрисованный HTML, который теряет структуру.

Пример: Copy for AI

Один клик по «Copy for AI» на том же эндпоинте:

text
## Create a user
POST /users

### Request
{
  "name": "string",
  "email": "string"
}

### Responses
201 Created (UserEntity)
400 Bad Request

### Validation
- name: required, minLength 2
- email: required, format email

docfy-ui собирает этот текст детерминированно из того же документа OpenAPI, который и так отдаёт любой Swagger UI. Ни дополнительной разметки, ни правок на бэкенде.

Возможности

  • Copy for AI: у каждого эндпоинта в один клик появляется готовая для LLM выжимка обычным текстом (назначение, запрос, ответы, правила валидации) вместо сырого JSON.
  • Copy OpenAPI: копирует фрагмент JSON только для выбранного эндпоинта, с раскрытыми $ref и без циклов.
  • Two-column endpoint view: документация слева (параметры, ответы, дерево схемы с навигацией), примеры кода справа (curl, JavaScript, Python, Go).
  • Real-time search: фильтрует боковую панель по пути, summary и operationId на каждое нажатие клавиши, без задержки и без Enter.
  • Dark/light theme: строится на токенах, переключается мгновенно, без перезагрузки и без вспышки при первой отрисовке.
  • Zero backend coupling: забирает документ OpenAPI 3.0/3.1 в формате JSON на стороне клиента, работает с любым сервером, который его отдаёт, а не только с NestJS.
  • Mobile-responsive: выдвижная панель ниже брейкпоинта lg, проверено на 375, 390 и 768 пикселях.
  • Compare specs: вставьте два URL спецификаций и увидите добавленные, удалённые и изменённые эндпоинты, каждый с пометкой «ломающее» или «информационное».
  • Multi-spec switcher: просмотр нескольких сервисов из одного экземпляра, когда хост настроил больше одной спецификации, иначе не показывается вовсе.
  • Deep-linking into a schema: Переход прямо во вложенное свойство схемы по хешу в URL (например, #response-200/address/city): нужный узел сам раскроется, и страница до него доскроллит. У каждой строки есть кнопка «скопировать ссылку», появляющаяся при наведении, чтобы взять URL именно этого свойства.
docfy-ui real-time endpoint search (⌘K)