Компоненты, созданные Николаем Fi1osof
Работая с MODX с 2009 года, Николай Fi1osof постепенно создавал компоненты не только для решения отдельных задач, но и для устранения ограничений, которые мешали использовать MODX как основу для сложных прикладных проектов.
Со временем эти решения начали дополнять друг друга. Одни меняли способ построения frontend, другие формировали повторно используемый логический слой на processors и xPDO, третьи помогали отлаживать, импортировать данные, наблюдать за работой приложения, собирать и распространять собственные пакеты. В результате вокруг стандартного MODX фактически сформировалась собственная инженерная экосистема.
Важной общей чертой было стремление не заменять ядро MODX параллельным фреймворком, а использовать и расширять его базовые механизмы. Логика по возможности выносилась в processors и классы, а слой представления оставался сменным. Для проектов, которые продолжают жить спустя десять и более лет, это приобретает новое значение: архитектурные границы, проведённые в прошлом, могут заметно упростить модернизацию сегодня.
Эта мысль сейчас проверяется на реальных legacy-проектах и связана с общим подходом к Headless MODX и постепенной миграции. Важен не возраст технологии сам по себе, а то, насколько тесно были связаны представление, данные и прикладная логика.
Основные компоненты этой экосистемы:
- Console — интерактивная отладка MODX — PHP-консоль внутри MODX Manager для проверки кода, объектов и processors.
- phpTemplates — PHP-шаблоны для MODX — ранний способ превратить статический MODX-шаблон в PHP-контроллер и подключать сторонние шаблонизаторы.
- modxSmarty — Smarty как presentation layer MODX — интеграция Smarty с MODX и практическое развитие идеи сменного слоя представления.
- modxSite — логический и API-слой MODX-проекта — основной логический слой, построенный вокруг processors, xPDO и повторно используемых операций.
- modSociety — социальное ядро MODX — универсальный инфраструктурный слой для блогов, форумов и других социальных проектов: блоги, топики, комментарии, рейтинги и контекстные права доступа. Использовался в обновлённом MODX-Клубе и позднее в NewsModxBox.
- shopModx — e-commerce на основе processors и xPDO — e-commerce-слой, развивавшийся вокруг той же идеи минимальной собственной логики и использования механизмов MODX.
- modMonitor — мониторинг выполнения MODX-проекта — инструмент наблюдения за реальным выполнением запросов и поиска узких мест в сложных проектах.
- modImporter — универсальный импорт данных в MODX — универсальный пошаговый импорт данных с акцентом на расширяемость и отладку.
- cacheOptimizer — оптимизация кеша MODX на больших проектах — решение для проектов, где стандартная модель кеша MODX переставала масштабироваться.
- Vapor — упаковка и перенос MODX-проектов — инструмент упаковки существующего MODX-проекта в переносимый snapshot и его развёртывания на другой MODX-установке.
- modxSDK — среда разработки внутри MODX — попытка создать встроенную среду разработки для MODX.
- modxRepository — собственный репозиторий пакетов MODX — инфраструктура распространения и обновления собственных transport packages через стандартный package manager MODX.
По отдельности эти компоненты решали разные задачи. Вместе они показывают направление развития: от использования MODX как CMS с шаблонами и сниппетами — к MODX как прикладной платформе, вокруг которой можно строить собственные уровни представления, API, диагностики и доставки программного обеспечения.
Эта линия дополняет общую историю Fi1osof: от внутренностей MODX к современной архитектуре.