Spatie — не “пакеты для красоты”, а готовые кирпичи для продакшена
У Spatie сильная сторона простая: почти каждый пакет закрывает один повторяющийся кусок инфраструктуры. Медиа-библиотека, роли и permissions, activity log, backup, sitemap, data transfer objects — вместо самописной обвязки берёте проверенный слой и не тратите недели на поддержку.
Есть правило, которое экономит много времени: сначала смотрим на границы домена, потом на пакет. Если задача сводится к “CRUD + хранение метаданных + события”, Spatie часто подходит. Если там жёсткая бизнес-логика, нестандартные права или сложные транзакции — пакет лучше использовать как низкоуровневую опору, а не как готовый фреймворк внутри фреймворка.
Перед подключением проверьте три вещи:
• как пакет хранит данные и можно ли жить с его схемой;
• есть ли у него события/хуки для вашей интеграции;
• не ломает ли он тесты, очереди и деплой из-за скрытой магии.
Самая частая ошибка — тащить Spatie “на всякий случай”. В таком режиме код быстро превращается в набор зависимостей, которые трудно менять. Нормальный подход другой: пакет должен убрать рутину, а не забрать архитектуру.
Если пакет можно объяснить одной фразой и он закрывает повторяющуюся боль без лишней магии — это хороший кандидат. Если приходится долго подгонять его под себя, дешевле собрать свой тонкий слой поверх понятных примитивов.
Laravel & PHP Deep — фреймворки и пакеты
@laravel_php_deep
Spatie — не “пакеты для красоты”, а готовые кирпичи для продакшена
Этот пост опубликован в Telegram-канале Laravel & PHP Deep — фреймворки и пакеты. Подписаться можно по ссылке: @laravel_php_deep.