Skip to content

Latest commit

 

History

History
157 lines (136 loc) · 11.9 KB

README.md

File metadata and controls

157 lines (136 loc) · 11.9 KB

AWESOME MAXIMASTER

Если вам интересно получать уведомления о наших новых решениях, подпишитесь в данном репозитории на релизы - будем делать их при добавлении сюда новых репозиториев или существенных обновлениях в существующих.

Обзор наших репозиториев

Приложения

  • bitrix-cli-install - консольное приложение, которое позволит вам установить Битрикс прямо из консоли из дистрибутива или бекапа. Наличие запущенного веб-сервера не требуется;
  • twig.filewatcher - консольное приложение, которое генерирует HTML-шаблоны из TWIG-файлов. Может быть настроена как Firewatcher в PHPStorm/Webstorm. Удобно, если нужно сразу делать простую вёрстку в TWIG с демо-данными;

Профилирование и отладка

  • tideways-xhprof - использует функции PHP расширения tideways-xhprof, чтобы сохранять информацию о времени выполнения кода для дальнейшего анализа производительности;

Утилиты

  • atoa - универсальный конвертер любых данных в требуемый тип (примитив или объект);
  • func - коллекция полезных функций для работы со стандартными типами данных;
  • exceptior - несколько функций упрощающих работу с исключениями в ряде сценариев;
  • alterator - упрощает поиск уникальных названий для объектов (например, при копировании объекта);

Расширения сторонних решений

  • doctrine-migration-comparators - позволяет вручную сортировать выполнение миграций doctrine/migrations в разных пространствах имён, а так же относительно числовых значений версий;
  • jaft - универсальный JSON:API трансформер для league/fractal;
  • file-mailer-transport - позволяет сохранять письма отправляемые через symfony/mailer как EML-файлы для последующего просмотра (например через Thunderbird) и долгосрочного хранения;
  • cli-ent - Guzzle handler позволяющий имитировать HTTP запросы в консольных приложениях;

Битрикс

Автономные

  • tools.finder - функции для выборки из БД идентификаторов различных сущностей по символьным именам;
  • tools.events - функционал для автоматической загрузки обработчиков событий Битрикс оформленных как статические методы класса с именем обрабатываемого события. См. bitrix-event-dispatcher, если хочется оформлять более типизированные события и обособленные обработчики;
  • bitrix-sql-profile - позволяет точечно профилировать конкретные хиты через Монитор производительности;
  • bitrix-enums - разные перечисления из ядра Битрикс, но при этом ядро не используется, что позволит использовать пакет в проектах без Битрикс, но которые с ним как-то взаимодействуют. Впрочем, помогает и в обычных Битрикс-проектах, чтобы не использовать магические числа;
  • bitrix-loader - загружает Битрикс, получая информацию о DOCUMENT_ROOT из разных источников;
  • bitrix-cron - упрощает установку агентов на cron;
  • bitrix-ufo - небольшая коллекция дополнительных UF-полей и интерфейсы для создания новых;
  • bitrix-reconnect - класс подключения к MySQL, который будет пытаться переподключиться настраиваемое количество раз при получении исключения Bitrix\Main\DB\ConnectionException;
  • bitrix-unstatic - извлечённые интерфейсы из существующих классов Битрикс, чтобы можно было подключать их как зависимости в ваших сервисах, при этом (а) загрузка ядра произойдёт лениво (б) нет никакой статики, как следствие на такой код легче написать unit-тесты;
  • bitrix-agent - типизированные интерфейсы работы с агентами (создание, чтение, обновление, удаление);
  • bitrix-orm-condition - удобные классы для упрощения построения условий сложных ORM-запросов;
  • bitrix-table-classes - DataManager-классы для таблиц которые Битрикс пока не описал, описал плохо, либо заблокировал те или иные нужные методы;
  • bitrix-table-fields - дополнительные типы полей и валидаторы для ваших DataManager-таблиц;
  • bitrix-value-objects - Value Object'ы для Битрикс, пока там только ModuleId;

Опирающиеся на другие крупные решения

Временные решения

  • array-unique-shim - костыльно исправляет баг из-за которого после array_unique вы можете получить массив с дубликатами;

Устаревшее

  • tools.orm - позволяет делать выборку данных из инфоблоков вместе со свойствами. В новых версиях такое есть из коробки;
  • bitrix-single-connect - в старых версиях Битрикс делает два подключения к MySQL (старое и новое d7). Данная библиотека обеспечивает наличие одного подключения;
  • tools.property_interfaces - набор интерфейсов, которые необходимо реализовать для разных вариантов исполнения пользовательских типов свойств. См. bitrix-ufo;

Общие подходы в наших репозиториях