Как человек, имеющий некоторый опыт по написанию расширений для этой cms хочу поделиться с вами оценкой данной системы. Я приведу несколько по моему мнению основных плюсов и минусов cms-ки с точки зрения разработчика расширений. Итак начну пожалуй с плюсов:
1) Возможности.
Система совсем молодая, расширений написано немного, так что можно занять нишу практически в любой области.
2) Дизайн.
Pagekit оснащена фирменным фреймворком от разработчиков - uikit. На мой взгляд фрейморк довольно простой и легкий. Хотя конечно много мне с ним не приходилось работать.
Юзабельность, минималистичность и красота админки в целом оставляют приятные впечатления.
3) Модульность.
С одной стороны пилить админку на js фреймворке для разработчика привыкшего это делать большей частью на php будет трудновато. Однако сочетание webpack + vue.js предоставляют довольно мощный инструмент для создания интерфейсов. Вы можете писать компоненты для компонентов, подключать их как отдельные модули, таким образом быстро и легко наращивать необходимый функционал. Возможно многим придется учиться чему то новому но оно того стоит вобщем то.
4) Одно расширение для всего.
Вот это наверное основное для меня удобство и преимущество. Не смотря на то что в pagekit расширения делятся на модули и виджеты, основной тип расширений это - модули. Виджет фактически входит в состав модуля. Если сравнивать с Joomla то виджет - это аналог модуля, модуль - это аналог компонента. Помимо этого есть система событий/хуков на которые вы можете подписываться в вашем модуле и которая позволит вам реализовать некое подобие плагинов. Если в Joomla вам нужно написать компонент + модуль + плагин и обернуть все это хозяйство в пакет, таким образом создав 4 типа расширений, то в pagekit это все может быть реализовано в одном единственном модуле. Это на самом деле очень удобно. При этом присутствует весь необходимый функционал, реализована модель MVC, основанная на фреймворке symfony (со своими впрочем особенностями, на изучение которых также придется потратить время тем кто никогда с этим фреймворком не работал)
Теперь минусы:
1) vue.js
Выше я выделил в плюс использование данного фреймворка для разработки админ интерфейсов. Однако есть и другая сторона медали. Vue.js в целом довольно легкий и шустрый фреймворк, многие пишут о том что для небольших приложений он удобнее остальных. Но разве cms-ка это небольшое приложение? К тому же фрейморк не особо то популярен, хотя отчасти это возможно оттого что он достаточно молод. Я ни разу не видел вакансию разработчика на vue.js тогда как разработчики angularJS, на мой взгляд куда более востребованы сейчас. Почему бы не использовать js фреймворк от Google, тем более что там вроде как гораздо больше функционала для сложных систем? Я конечно не эксперт по js фреймворкам коих сейчас немало, но все же для меня это пока что как и плюc так и минус так как на его изучение вам таки придется потратить какое то время. Может кто нибудь из вас расскажет мне в чем у него тут преимущество?
2) Солянка из технологий.
В Cms-ку встроен венегрет из всех современных технологий. Помимо того что архитектура symfony знакома далеко не всем тут есть еще vue.js, webpack, шаблонизатор twig, библиотеки jQuery, lodash и наверное еще что то о чем я забыл упомянуть) Вот уж не думаю что так много бекенд разработчиков, которые хорошо знакомы со всеми этими технологиями. С одной стороны чуть более высокий порог вхождения для разработчиков - это может быть плюс. Расширения будут возможно более качественными. Но на самом деле я думаю что их просто будет очень мало, есть опасения что этим будут заниматься лишь энтузиасты любители. А без достаточного количества разработчиков расширений популярность cms-ки врятли будет достаточно высока.
3) Запутанность кода.
Cms-ка вроде бы написана на современном коде, но обилие классов, трейтов, интерфейсов, магических методов и прочих всяких штук очень затрудняет отладку кода. Практически ни один класс в моей IDE не подсвечен! Приходится тратить немало времени чтобы понять, что представляет из себя та или иная переменная. Pagekit вроде бы базируется на symfony, однако функционал фреймворка сильно переделан и обрезан. К примеру для реализации вложенных множеств я захотел использовать возможности Doctrine ORM. Но не тут то было. Оказывается разработчики выпилили ORM от фрейморка и вместо него написали свой, в котором конечно же нет необходимого мне функционала. Зачем разрабатывая cms на фрейморке вырезать один из самых основных его компонентов? Разве это не основная фишка таких cms, то что вы можете использовать возможности фреймворка?
4) Документация
Последняя и одна из самых важных на мой взгляд проблем. Да, документация на данный момент весьма скромная, а в исходниках практически отсутствуют комментарии. Учитывая запутанность кода вы попросту будете тратить кучу времени на то чтобы разобраться как там все работает.
Я не брал в усмотрение всякие неприятные мелочи вроде глюковатости админ интерфейса и отсутствия банального прелодера, но я думаю проблема больше в том, что система еще достаточно сырая и в будущем это скорее всего исправят. Исправят возможно и самый жирный я думаю для всех минус - отсутствие подробной документации и комментариев в коде.
Ну а пока я могу рекомендовать данную cms-ку лишь разработчикам-энтузиастам и тем людям у которых достаточно времени для саморазвития. В конце концов, за многими из тех технологий на который базируется данная cms возможно есть большое будущее.