Евгений Горяев
Разработка, поддержка и развитие сайтов

Composer пакеты для Yii2

В этот раздел я стараюсь регулярно добавлять свои проекты. Безусловно, в этом разделе собраны не все проекты, которые я сделал за последние годы, однако по наличию свободного времени пополняю этот раздел как новыми проектами, так и старыми, про которые вспоминаю.


floor12/yii2-notification

Нотификации в браузере через JS и PHP-api с очередью.

Latest Stable Version scrutinizer badge Latest Unstable Version Total Downloads License

В любых проектах так или иначе необходимо показывать нотификации пользователю. Я вынес в отдельный пакет небольшой компонент для создания уведомлений в браузере трех типов: информационные (info), позитивные(success) и негативные(error). Использовать дополнение легко вызывая JS функцию или PHP-класс. Для визуализации уведомлений в  DOM встраиваются SVG иконки. Кастомизировать стили отображения можно переопределив несколько CSS-стилей. Основные плюсы решения - отсутствие зависимостей и небольшой размер.

floor12/imagenator

Генерация изображения для OpenGraph с логотипом и заголовком страницы или статьи.

Build Status Scrutinizer Code Quality

На новостных сайтах часто встречаются превью новости для OpenGraph в виде текста, логота, фотографии или коллажа из всего этого. Данный модуль позволяет генерировать такого рода изображеня для каждой статьи по заданным параметрам с поддержкой шрифтов.

floor12/mindbox-api-client

Общая абстракция над апи MindBox

Scrutinizer Code Quality Code Coverage Build Status

По одному из проектов необходимо было работать с mindbox. Для работы была написана общая абстракция, используя которую можно выполнять любые запросы.

floor12/yii2-summernote

Виджет WYSIWYG-редактора Summernote для фреймворка Yii2 .

Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

Виджет WYSIWYG-редактора Summernote для фреймворка Yii2 c
включенными ассетами и поправлеными багами в js-библетеках.

floor12/yii2-phone

Валидатор и форматтор для телефонных номеров.

Build Status Code quality score Code Coverage Latest Stable Version Total Downloads License

К сожалению в стандартном компоненте Formatter в Yii2 отсутствует возможность форматировать телефонные номера, а так же среду core validators нет валидатора на телефонный номер (хотя для email, например, он есть. Лично мне в проектах, которыми я занимаюсь, работать с телефонным номером приходится не реже, чем с электронной почтой. Для этого был написан небольшой компонент, который позволяет это делать достаточно быстро и удобно, а именно: валидировать телефонные номера на клиентской и серверной стороне, а так же форматировать их вывод.

floor12/yii2-metamaster

Быстрое добавление и редактирование SEO и OpenGraph мета-тегов.

Build Status scrutinizer badge Latest Stable Version Latest Unstable Version Total Downloads License

В том случае, когда мы разрабатываем на yii2 публичный сайт, а не какую-то внутреннюю информационную систему, то нам необходимо организовать генерацию различных seo и OpenGraph тегов. Часть этих тегов индексируется поисковыми системами (Page title, meta-description, meta-keywords). Другая часть, OG и Twiiter теги нужны для корректного отображения предварительного просмотра (миниатюры) страницы во время шаринга её в социальных сетях. При этом, часто бывает нужно установить, картинкой-обложкой на конкретную страницу, скажем картинку статьи, а при шаринге других разделов - показывать картинку по-умолчанию. Все эти проблемы призвано решить это небольшое расширение для фреймворка Yii2. С помощью него возможно в пару-тройку строк вызвать класс, передав в него объект View, можно обогатить его всеми необходимыми тегами.

floor12/yii2-module-files

Удобная работа с файлами ваших ActiveRecord-моделей Yii2.

Scrutinizer Code Quality Latest Stable Version Latest Unstable Version Total Downloads License

Организация работы с файлами всегда была головной болью для меня, в той или иной степени. Этот модуль - это третья попытка решить эту проблему. Данный модуль имеет почти все необходимые возможности: добавляет к моделям любое количество файловых полей, с отдельными валидаторами (с возможностью использовать сценарии), а так же позволяет работать с файлами использую виджет, поддерживающий предварительный  просмотр офисных документов, кроп и поворот изображений, драг-н-дропную загрузку и сортировку файлов. Так же, в поставке, идет виджет для вывода файлов, в виде списка с возможностью скачать все файлы одним архивом.

floor12/yii2-module-backup

Модуль для создания, восстановления и удобного управления бекапами.

Build Status Scrutinizer Code Quality Latest Stable Version Latest Unstable Version Total Downloads License

Данный модуль позволяет бекапить  папки и базы данных в рамках приложения на Yii2 фремворке. Для управления бекапами можно использовать веб-интерфейс, консольные команды или REST-API. При необходимости, модуль самостоятельно удаляет устаревшие копии и хранит только указанное количество бекапов разного типа.