Компоненты Triangle Framework

Компоненты — это модульные библиотеки, расширяющие функциональность ядра Triangle Engine. Каждый компонент может использоваться независимо и настраивается через систему конфигурации.

Доступные компоненты

Console (triangle/console)

Система консольных команд и CLI-инструментов.

Основные возможности:

  • Создание консольных команд
  • Генерация кода (контроллеры, модели, middleware)
  • Управление плагинами
  • Сборка бинарных файлов и PHAR-архивов

Документация: Console Component

Router (triangle/router)

Мощная система маршрутизации с поддержкой различных алгоритмов диспетчеризации.

Основные возможности:

  • Быстрая диспетчеризация маршрутов
  • Поддержка параметров маршрутов
  • Группировка маршрутов
  • Различные алгоритмы диспетчеризации (Mark-based, Group-based и др.)

Документация: Router Component

Middleware (triangle/middleware)

Система промежуточного ПО для обработки запросов.

Основные возможности:

  • Глобальные и маршрутные middleware
  • Последовательная обработка запросов
  • Аннотации для привязки middleware к маршрутам

Документация: Middleware Component

Database (triangle/database)

Работа с базами данных на основе Illuminate Database.

Основные возможности:

  • Query Builder
  • Eloquent ORM
  • Миграции
  • Поддержка множественных подключений
  • Поддержка PostgreSQL, MySQL, SQLite и др.

Документация: Database Component

View (triangle/view)

Система шаблонизации с поддержкой различных движков.

Основные возможности:

  • Поддержка Twig, Blade, ThinkPHP шаблонов
  • Система наследования шаблонов
  • Кэширование скомпилированных шаблонов

Документация: View Component

Session (triangle/session)

Управление сессиями пользователей.

Основные возможности:

  • Различные драйверы сессий (файлы, Redis, MongoDB)
  • Безопасное хранение данных сессии
  • Настраиваемое время жизни сессии

Документация: Session Component

Events (triangle/events)

Система событий для реализации паттерна Observer.

Основные возможности:

  • Регистрация слушателей событий
  • Синхронная и асинхронная обработка событий
  • Группировка слушателей

Документация: Events Component

Cron (triangle/cron)

Планировщик задач (cron-задач).

Основные возможности:

  • Планирование периодических задач
  • Интеграция с системой событий
  • Поддержка cron-выражений

Документация: Cron Component

Использование компонентов

Все компоненты автоматически инициализируются через систему Bootstrap Engine. Для настройки компонента используйте соответствующие файлы конфигурации в папке config/.

Пример конфигурации компонента:

// config/router.php
return [
    'route' => [
        // настройки маршрутизации
    ],
];

Установка компонентов

Компоненты устанавливаются через Composer:

composer require triangle/router
composer require triangle/database
# и т.д.

После установки компоненты автоматически подключаются к системе, если они указаны в конфигурации Bootstrap.