What is docfy-ui
Interfejs dokumentacji OpenAPI AI-first, projekt towarzyszący nestjs-docfy. Lekka, nowoczesna referencja API z przyciskiem Copy for AI przy każdym endpoincie.


Motywacja
Większość interfejsów OpenAPI jest budowana dla ludzi przewijających stronę, co jest niewłaściwym formatem dla innego odbiorcy czytającego dziś dokumentację: modelu LLM, w którego kontekst coś wklejasz. Skopiowanie szczegółów endpointu zwykle oznacza zabranie surowego JSON-a (rozwlekłego, pełnego $ref i szumu) albo skopiowanie wyrenderowanego HTML-a (co gubi strukturę).
Przykład: Copy for AI
Jedno kliknięcie „Copy for AI” na tym samym endpoincie:
## 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 emaildocfy-ui renderuje ten tekst deterministycznie z tego samego dokumentu OpenAPI, który już serwuje dowolny Swagger UI, bez dodatkowych adnotacji i bez zmian po stronie backendu.
Funkcje
- Copy for AI: każdy endpoint dostaje jednym kliknięciem czysto tekstowe, gotowe dla LLM podsumowanie (cel, żądanie, odpowiedzi, reguły walidacji) zamiast surowego JSON-a.
- Copy OpenAPI: kopiuje zdereferencowany, bezpieczny od cykli fragment JSON tylko dla wybranego endpointu.
- Two-column endpoint view: dokumentacja po lewej (parametry, odpowiedzi, przeglądane drzewo schematu), fragmenty kodu po prawej (curl, JavaScript, Python, Go).
- Real-time search: filtruje panel boczny po ścieżce/podsumowaniu/operationId przy każdym naciśnięciu klawisza, bez debounce, bez klawisza Enter.
- Dark/light theme: sterowane tokenami, przełącza się natychmiast, bez przeładowania i bez błysku przy pierwszym renderze.
- Zero backend coupling: pobiera dokument JSON OpenAPI 3.0/3.1 po stronie klienta; działa z dowolnym serwerem, który go udostępnia, nie tylko z NestJS.
- Mobile-responsive: wysuwany panel poniżej breakpointa
lg, przetestowany na 375/390/768px. - Compare specs: wklej dwa URL-e specyfikacji i zobacz dodane/usunięte/zmienione endpointy, każdy oznaczony jako breaking albo informacyjny.
- Multi-spec switcher: przeglądaj kilka usług z jednej instancji, gdy host konfiguruje więcej niż jedną specyfikację, w przeciwnym razie całkowicie ukryte.

