Skip to content

Полный каталог модулей (с зависимостями)

Статус: сводный реестр. Единый категоризированный список всех модулей CMS с явными зависимостями. Сводит воедино каталог подсистем, реестр по донорам и граф зависимостей. Принцип: ядро универсальное (всегда загружено), возможности — через включаемые модули.

Легенда

  • Слой: 🟢 ядро (всегда) · 🔵 инфра-модуль · 🟡 функц-модуль.
  • Зависит от: что должно быть включено, чтобы модуль работал (жёсткая зависимость, requires). ядро = базовые механизмы ядра.
  • Зрелость: ★★★ готово к портированию · ★★ рабочая реализация · ★ новое/прототип.
  • Донор — проект студии с самой зрелой реализацией.

Как читать зависимости

Модуль не включается, пока не включены его зависимости. Каскад: включаешь модуль → реестр ядра проверяет requires и предлагает/тянет их (см. граф зависимостей). provides — абстрактный контракт, который модуль реализует (несколько модулей могут его предоставлять).

Что можно выключать, не сломав систему

Правило единое, а не список исключений:

  • ядро (🟢) не выключается — по определению («не имеет смысла выключить»);
  • любой модуль (🔵/🟡) можно выключить, если на него нет включённых обратных зависимостей — реестр проверяет граф и показывает «кто зависит» до выключения;
  • выключение — всегда деградация, не поломка (сценарий B): блоки/виджеты модуля отдают fallback-заглушку, данные в БД сохраняются, публичный сайт жив; админ предупреждён «модуль используется в N блоках на M страницах»;
  • исключение — обязательный набор managed-парка (бэкап, health-check, Sentry, центр обновлений): технически выключаемы, но на сайте под подпиской выключать нельзя — без них запрещена процедура обновления;
  • поведение конкретного модуля при выключении описывает его docs/module.md (контракт модуля).

A. Ядро (cms/core) — всегда загружено 🟢

Универсальное ядро: базовые механизмы + редакторы. Не «выключается».

A1. Базовые механизмы

ПодсистемаЗависит отДонорЗрелость
Kernel/DI/bootstrapLaravel★★★
Реестр модулей (граф зависимостей)Kernelnwidart (референс)★★
События/хуки (шина + фильтры)проектируется★★
Очередивсе★★★
Планировщик (cron)Очередивсе★★★
Кеш-слой (теговый)Событияcatalog, universal★★★
Стор настроекКешuniversal, gulaev-dev★★★
Движок полей (типы/валидация/рендер)★★
API-слой (REST, headless-ready; GraphQL — инфра-модуль)Аутентификация, RBAC
Локализация строк (i18n)Настройкивсе★★★
Логированиевсе★★★
Файловое хранилищевсе★★★
Медиатека + обработка изображенийХранилищевсе (spatie)★★★
Миграции данных★★
Локальные переопределения (/local)События

A2. Контент-движок

ПодсистемаЗависит отДонорЗрелость
Страницы + блоки (BlockRegistry)События, Движок полейuniversal, gulaev-dev★★★
Произвольные типы контента (JSONB+GIN)Движок полей★★
Таксономии/тегиТипы контентанесколько★★
Черновики/версииСтраницыTwill (референс)
МенюСтраницыuniversal★★
Виджеты (WidgetRegistry)Страницы
Конструктор формДвижок полей, Заявки
Заявки/лиды (без магазина)Формы, Очередиuniversal (Contact)★★★
Email/SMTPОчередивсе★★★

A3. Безопасность (ядро)

ПодсистемаЗависит отДонорЗрелость
Аутентификация + Пользователивсе★★★
RBAC (Shield + spatie/permission)Аутентификацияfreelance, referendum★★★
Политики (Policies)RBACвсе★★★
Rate-limitingвсе★★★
Защита форм (CSRF/honeypot/капча)Формывсе★★★
Шифрование полей★★

A4. SEO-база (ядро)

ПодсистемаЗависит отДонорЗрелость
Мета/шаблоны/canonicalСтраницыgulaev-dev, er★★★
SitemapПланировщикer, catalog★★★
Robots/редиректыgulaev-dev★★★
Schema.org / OpenGraphSEO-метаgulaev-dev★★★
ЧПУ/маршрутизацияСтраницывсе★★★

A5. Редакторы-инструменты (ядро)

ПодсистемаЗависит отДонорЗрелость
Редактор сущностейТипы контента, RBAC★★
Редактор типов данныхДвижок полей★★
Файловый менеджерМедиатека, Хранилище★★
Управление пользователямиАутентификация, RBACвсе★★★
Редактор структуры/разделовСтраницы, Меню★★
Админ-shell + ДашбордRBACFilament★★

B. Инфраструктурные модули 🔵

Включаются по потребности, часто нужны почти везде.

МодульЗависит отDonorЗрелость
Отладка/профилированиеЛогирование★★
Мониторинг/health-check (обяз. в managed-парке)Уведомленияer, catalog★★
Sentry/трекинг ошибок (обяз. в managed-парке)Логирование★★
Поиск (Scout+Meilisearch/ES)Очередиcatalog, freelance★★★
CDN-инвалидацияСобытия, Кешcatalog★★★
Аудит действийСобытияfreelance, referendum★★
Резервное копирование (обяз. в managed-парке)Планировщик— (spatie/backup)★★
Импорт данныхОчередиuniversal (Import/*)★★
Экспорт данных (прайс XLSX)Очередиuniversal★★
Feature-flags (UI-таргетинг; механизм pennant — в ядре)Настройки— (laravel/pennant)★★
Broadcasting/realtimeОчереди, События
Шина интеграцийОчереди, Настройки
Входящие вебхукиСобытия, Безопасностьnotal (платёжные)★★
Исходящие вебхукиСобытия, Очереди
Внутренние уведомленияШина увед.freelance★★
Шина уведомлений (резолвер каналов)Очередиfreelance, notal★★★
API-токены (Sanctum)Аутентификацияfreelance★★
Session-управлениеАутентификация★★
МногосайтовостьНастройки, Маршрутизация
МультитенантностьАутентификация
Управление доменамиМногосайтовостьproxy
Центр обновлений (обяз. в managed-парке, ставится skeleton'ом)Бэкап, Health-check
Онбординг/визард установкиНастройки
Панель разработчикаКеш, Планировщик
Объектное хранилище (S3/Selectel)Файл-хранилище★★
Email/SMS-провайдеры (транспорт)Email, SMS★★
Шаблоны писемEmail
Маркетплейс модулейРеестр модулей, Центр обновлений
Флит-дашборд (студийный сервис)Центр обновленийproxy

C. Контент и услуги 🟡

МодульЗависит отДонорЗрелость
Услуги (иерархия)ядро; suggests Мультигород (гео-оси, city-падежи — работает и в одном городе)artel-23ru★★★
SEO услуг (generic-движок)Услуги, Cityartel-23ru★★★
Кросс-оси услуг (район/бренд/тип)Услуги, SEO услугartel-23ru★★
Блог/статьи (пресет типа контента, ревизия ТЗ предстоит — engine §16)Страницыgulaev-dev, universal★★★
МультиязычностьСтраницыreferendum, universal★★
КомментарииАнтиспам
Отзывы/рейтинги (пресет типа контента, ревизия ТЗ предстоит — engine §16)Антифродcatalog, er★★★
Модерация (workflow)RBAC, Черновики
FAQ (кандидат в пресет типа контента, модуль уже реализован в коде)SEOнесколько★★
Глоссарий/справочникSEO3 проекта (Dictionary)★★
Баннеры/слайдеры (пресет типа контента, ревизия ТЗ предстоит — engine §16; порог переиспользования — модулем становится только при повторном использовании слайда)Медианесколько★★
Галереи/портфолио (кейсы) (пресет типа контента, ревизия ТЗ предстоит — engine §16)Медиа, Услуги (опц.)artel-23ru, universal★★
Калькулятор/сметаCityartel-23ru, universal★★
Опросы/голосованияФормыreferendum★★
Wizard/анкетыФормыreferendum★★
Публикация по расписаниюПланировщик, Страницы
Связанный контент/рекомендацииТипы контента
Витрина товаров без корзиныядро; suggests cms/search, cms/related-content, cms/multicity, cms/galleries — НЕ commerce-* (отдельный уровень, commerce-catalog — фаза 2); приоритет P1universal★★
Библиотека секций/паттернов (Gutenberg-style)ядро (BlockRegistry, движок полей); suggests cms/landings; приоритет P0studio-core (UX-референс, без кода)
Конструктор форм (пресеты + кастом-поля)ядро (cms_forms/LeadService); suggests cms/notifications-bus, капча-интеграции, cms/multicity; приоритет P1

D. Маркетинг и SEO (расширенный) 🟡

МодульЗависит отДонорЗрелость
Умный SEO-фильтрSEO-база, Каталог/Услугиer★★★
Мультигород/региональностьSEO-база, Настройкиgulaev-dev, er★★★
SEO-движок (аудит+краулер)SEO-базаgulaev-dev★★★
Аналитика/счётчикиНастройки★★
Пиксели/tag managerАналитика★★
UTM/атрибуцияЗаявки★★
A/B-тестыFeature-flags, Аналитика
ЛендингиСтраницыstudio-core★★
Поп-апы/лидогенФормы, A/B
Email-маркетингРассылки
Рассылки (newsletter)Email, Очереди★★
Реферальная программаЗаказыnotal★★
Лояльность/бонусы (транзакционный счёт, правила начисления, уровни → типы цен; модель)Заказыnotal★★
Купоны/промо-кампанииСкидки, Лендингиnotal★★
AI-контент (генератор текста/SEO-полей)ядро, cms/integrations-bus; suggests cms/seo-engine, cms/blog, cms/commerce-catalog; приоритет P2 — реализация отложена (проектируется, внедрение позже)universal/artel (ClaudeArticleGenerator)★★
Инъекция кода в <head>/</body> (CSP-гард)ядро (швы layout.head/layout.body_end, security.csp); suggests cms/multicity, cms/audit; приоритет P1

E. E-commerce (магазин) 🟡

Цепочка жёстких зависимостей. Включать только магазину (см. граница лид≠заказ).

Доменная модель слоёв (ТП, склады, цены, НДС, скидки) — модель e-commerce.

МодульЗависит отДонорЗрелость
Каталог (+ торговые предложения: варианты цвет×размер, SKU) — highload-уровень, фаза 2; для лёгкой корп-витрины см. категорию C — cms/catalog-showcaseМедиа; suggests Поиск (fallback — PG tsvector)universal, catalog; Lunar (модель ТП)★★★
Свойства/характеристикиКаталогcatalog★★
Фасетный фильтр (учитывает свойства ТП)Каталог, Поискcatalog★★
Цены/типы цен (розница/опт/старая/price1-2, видимость по группам и лояльности, тир-прайсинг)Каталог, Валютыmasha★★
Мульти-склад (склады, остатки per-склад, резервы, движения)Каталогmasha★★
КорзинаКаталогmasha★★
Брошенные корзиныКорзина, Email
ЗаказыКорзинаmasha, notal★★
ПлатежиЗаказы, Очередиnotal, er★★★
Подписки/рекуррентныеПлатежи, Планировщикer, notal★★
ДоставкаЗаказы
Налоги/НДС (ставки, режим юрлица)Заказы
Скидки/промокоды (rule-engine: условие→действие, приоритеты)Корзина, Заказыnotal★★
Возвраты (RMA)Заказы, Платежиnotal★★
Чеки/ОФД (54-ФЗ: НДС и признак предмета расчёта per-позиция)Платежи
Цифровые товары (выдача файлов/лицензий после оплаты)Каталог, Платежи
Продажа услуг (fulfilment: service, мост с модулем «Услуги»)Каталог
ВалютыКаталогer★★
Инвойсы/документы (PDF)Заказыreferendum★★
Wishlist/сравнениеКаталог
B2B (юрлица/договоры)Заказы, Цены
Маркетплейс/мультивендорКаталог, Заказы, Платежиnotal (эскроу)★★

F. Безопасность (модули) 🟡

МодульЗависит отДонорЗрелость
2FAАутентификацияer, freelance★★
Соцвход oauth-max / oauth-telegram / oauth-yandex (отдельный модуль на провайдера; без Google)Аутентификация
Magic-loginEmailnotal★★
АнтиспамФормы
АнтифродОтзывы, Заявкиcatalog, er★★
Согласия/152-ФЗАудит
Cookie-consentСогласия, Настройки
Политика паролейАутентификация
Attack-monitor (статистика атак, автоблокировка, блок-лист → Caddy) (обяз. в managed-парке)Логирование, Аудит, Уведомленияcatalog/er (антифрод), freelance (Domains/Reputation)

G. Кабинеты и мобильные 🟡

МодульЗависит отДонорЗрелость
Клиентский кабинет B2CПользователи, API-слойнесколько★★
Клиентский кабинет B2BКабинет B2C, Заказы, Цены
UGC-публикации + модерацияМодерация, Антифродcatalog, er★★
Мобильный API + pushAPI-слой, Шина увед.push-server★★
Web-pushШина увед.
SMSШина увед.
TelegramШина увед.masha, notal★★
WhatsApp/мессенджерыШина увед.
Чат/онлайн-консультантRealtime, Шина увед.

H. Интеграции (РФ) 🟡

Все — через шину интеграций.

МодульЗависит от / providesДонорЗрелость
Платёжные шлюзы РФ (ЮKassa/Тинькофф/СБП)Платежи · provides: payment-gatewaynotal★★★
Крипто-платежиПлатежи, Валютыer★★
ОФД/фискализацияЧеки 54-ФЗ
Доставка РФ (СДЭК/Почта/Boxberry)Доставка · provides: delivery-provider
1С-обмен (CommerceML)Каталог, Заказы, Склад
CRM (Битрикс24/amoCRM/RetailCRM)Заявки, Исх. вебхуки
Маркетплейсы (Ozon/WB/ЯМаркет)Каталог, Заказы, Склад
Яндекс-сервисы (Карты/Метрика/Captcha)Шина интеграцийнесколько★★
Google-сервисы (Maps/Analytics/reCAPTCHA)Шина интеграций
Госуслуги/ЕСИАOAuth, Согласия
ЭДО (Диадок/СБИС)Шина интеграций, B2B
DaData/ФИАСФормы, Заказы★★
Курсы валют (ЦБ РФ)Валюты, Планировщик
ВидеохостингМедиа
КалендариШина интеграций
ERP1С-обмен, Заказы

Метапакеты (наборы под типовой заказ)

Один composer require → граф зависимостей разворачивает набор модулей:

МетапакетВключает
Корпоративный сайтядро + Услуги + SEO услуг + Портфолио + Блог + Мультигород
Магазинядро + Каталог + Корзина + Заказы + Платежи + Доставка + Склад (для РФ: + Чеки/ОФД 54-ФЗ + Платёжные шлюзы РФ)
Портал услугядро + Услуги + Кросс-оси + Калькулятор + Кабинет B2C + Отзывы
Маркетплейсядро + Каталог + Мультивендор + UGC-модерация + Платежи (сплит) + Кабинеты B2C/B2B

Заявки, SEO-база, конструктор форм в метапакеты не входят — они в ядре и загружены всегда. Составы метапакетов здесь канонические; граф зависимостей ссылается сюда.

Связанные разделы

Внутренняя база знаний студии