PHPackages                             roilafx/swaggeruievo - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. roilafx/swaggeruievo

ActiveLibrary[API Development](/categories/api)

roilafx/swaggeruievo
====================

Модуль для переноса Swagger UI в админку Evolution CE

010PHP

Since Dec 16Pushed 4mo agoCompare

[ Source](https://github.com/Kolya1222/Swagger)[ Packagist](https://packagist.org/packages/roilafx/swaggeruievo)[ RSS](/packages/roilafx-swaggeruievo/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Swagger UI для Evolution CMS
============================

[](#swagger-ui-для-evolution-cms)

Пакет для автоматической генерации OpenAPI документации и отображения Swagger UI в админ-панели Evolution CMS. Поддерживает интеграцию с EvolutionAPI и другими модулями.

Возможности
-----------

[](#возможности)

- Автоматическая генерация OpenAPI документации из PHP аннотаций
- Встроенный Swagger UI интерфейс в админ-панели Evolution CMS
- Гибкая настройка через конфигурационный файл и переменные окружения
- Поддержка нескольких версий API
- Консольная команда для генерации документации
- Кастомизация внешнего вида и поведения Swagger UI
- Поддержка сканирования EvolutionAPI и других пакетов

Установка
---------

[](#установка)

### 1. Установка пакета

[](#1-установка-пакета)

```
php artisan package:installrequire roilafx/swaggeruievo "*"
```

2. Публикация стилей и скриптов

```
php artisan vendor:publish --provider="roilafx\swaggeruievo\swaggeruievoServiceProvider"

```

### 3. Настройка переменных окружения (опционально важный MODX\_SITE\_URL)

[](#3-настройка-переменных-окружения-опционально-важный-modx_site_url)

Добавьте в файл `.env` вашего проекта:

```
# Swagger UI настройки
SWAGGER_UI_ENABLED=true
SWAGGER_UI_TITLE="Мой проект - API Documentation"
SWAGGER_GENERATOR_ENABLED=true
SWAGGER_OUTPUT_PATH="/путь/к/openapi.json"
MODX_SITE_URL="https://ваш-сайт.com"
```

Конфигурация
------------

[](#конфигурация)

Пакет использует файл конфигурации с широкими возможностями настройки:

### Основные настройки UI

[](#основные-настройки-ui)

```
'ui' => [
    'enabled' => true, // Включить/выключить Swagger UI
    'title' => 'API Documentation', // Заголовок страницы
    'urls' => [
        'v1' => 'openapi.json', // Пути к спецификациям API
    ],
],
```

### Настройки отображения

[](#настройки-отображения)

```
'display' => [
    'doc_expansion' => 'none', // Сворачивание/разворачивание документации
    'filter' => false, // Поиск/фильтрация
    'syntax_highlight' => [
        'theme' => 'agate', // Тема подсветки синтаксиса
    ],
],
```

### Настройки генератора документации

[](#настройки-генератора-документации)

```
'generator' => [
    'enabled' => true, // Включить генерацию
    'output_path' => 'assets/modules/swagger-ui/openapi.json', // Путь для сохранения
    'scan_paths' => [
        base_path('vendor/roilafx/evolutionapi/'), // Сканировать EvolutionAPI
        base_path('/assets/modules/'), // Сканировать модули
    ],
    'server_url' => 'http://ваш-сайт.com', // Базовый URL сервера
],
```

Использование
-------------

[](#использование)

### Генерация документации

[](#генерация-документации)

```
# Базовая генерация документации
php artisan swagger:generate

# С очисткой кэша
php artisan swagger:generate --clear

# Принудительная перезапись существующего файла
php artisan swagger:generate --force

# Комбинированные опции
php artisan swagger:generate --clear --force
```

### Доступ к Swagger UI

[](#доступ-к-swagger-ui)

После успешной генерации документации:

1. Войдите в админ-панель Evolution CMS
2. Перейдите в раздел "Модули"
3. Найдите и откройте "Swagger UI Documentation"

### Интеграция с EvolutionAPI

[](#интеграция-с-evolutionapi)

Пакет автоматически сканирует и документирует EvolutionAPI если он установлен.

Аннотации OpenAPI
-----------------

[](#аннотации-openapi)

### Пример контроллера с аннотациями

[](#пример-контроллера-с-аннотациями)

```
