Laravel Shopper: Headless-панель адміністратора для e-commerce на Laravel.

Перекладено ШІ 0 Laravel News 06 травня, 2026

Laravel Shopper — це сучасна headless-панель для електронної комерції, яка дозволяє зосередитися на розробці унікального фронтенду на базі стеку TALL. Дізнайтеся, як цей інструмент спрощує керування каталогом, замовленнями та інтеграцію платіжних систем.

Laravel Shopper — це open-source панель керування для headless e-commerce, побудована на стеку TALL (Tailwind, Alpine, Laravel, Livewire). Замість готової вітрини, система зосереджена виключно на бек-офісі: керуванні каталогом, замовленнями, клієнтами, знижками та командою. Це дає повну свободу у виборі технологій для фронтенду — від React, Vue та Svelte до Blade.

# Встановлення

Для роботи Shopper потрібні Laravel 11+ та PHP 8+. Встановіть пакет і запустіть інсталятор:

composer require shopper/framework
php artisan shopper:install

Команда інсталяції виконає міграції, завантажить початкові дані та налаштує storage symlinks. Після цього створіть першого адміністратора:

php artisan shopper:user

Вам потрібно буде вказати ім'я, email та пароль. Панель керування доступна за адресою /cpanel/login.

# Функціональні можливості

# Каталог

Система каталогу включає товари, варіації, атрибути, категорії, колекції та бренди. Для кожного продукту можна налаштувати кілька варіацій з індивідуальними цінами, залишками на складі та фотогалереями. Колекції працюють як гнучкий аналог категорій: товари до них можна додавати вручну або автоматично за заданими правилами.

# Замовлення

Інтерфейс керування замовленнями забезпечує єдиний вигляд всього життєвого циклу продажу: від статусу оплати до деталей доставки та fulfilment. Адміністратори можуть обробляти замовлення, оновлювати дані трекінгу та керувати поверненнями безпосередньо з дашборду.

# Клієнти

Профілі клієнтів містять історію покупок, збережені адреси та контактні дані. Модуль відгуків інтегрований із профілями, що дозволяє покупцям оцінювати товари, а адміністраторам — модерувати фідбек.

# Знижки

Система промокодів підтримує налаштування умов: мінімальну суму замовлення, ліміти використання та термін дії. Це покриває більшість маркетингових сценаріїв без потреби у сторонніх плагінах.

# Керування командою

Доступ команди регулюється системою ролей. Ви можете створювати акаунти з обмеженим доступом — наприклад, дозволити працівникам складу бачити лише замовлення та інвентар, приховавши ціни та налаштування знижок.

# Двофакторна автентифікація

Вбудована 2FA для адміністраторів додає рівень безпеки панелі керування без необхідності додаткового налаштування.

# Інтеграція платіжних шлюзів

Shopper постачається з готовою інтеграцією Stripe та модулем для ручної оплати (готівкою або при отриманні). Драйвер Stripe керує повним циклом оплати: створення PaymentIntent, авторизація, списання коштів, повернення, скасування та обробка webhooks.

# Конфігурація

Інсталятор створює директорію config/shopper/ з окремими файлами для налаштувань адмінки, автентифікації, моделей, маршрутів та медіафайлів. Кілька важливих параметрів у config/shopper/admin.php:

'prefix' => env('SHOPPER_PREFIX', 'cpanel'),

'pages' => [
    'namespace' => 'App\\Livewire\\Shopper',
    'view_path'  => resource_path('views/livewire/shopper'),
],

'brand'   => null, // шлях до вашого логотипа, наприклад '/images/logo.svg'
'favicon' => null,

'locales' => [
    'en' => ['label' => 'English', 'flag' => 'gb'],
    'fr' => ['label' => 'Français', 'flag' => 'fr'],
],

Ключ prefix визначає URL-сегмент для всієї панелі. pages встановлює namespace та шлях до шаблонів для кастомних Livewire-сторінок.

Налаштування магазину (назва, валюта, адреса) зберігаються в моделі Setting і кешуються на добу. Хелпер shopper_setting() дозволяє легко отримати будь-яке значення:

$currency = shopper_setting('shop_currency'); // наприклад, "USD"
$storeName = shopper_setting('shop_name');

# Розширення функціоналу

Shopper розроблений для розширення, а не для форку. У директорії config/shopper/components/ можна замінити будь-який стандартний Livewire-компонент (товари, замовлення тощо) на власну реалізацію. Пункти навігації також можна додавати через Service Provider без втручання в початковий код пакета.

# Starter Kits

Для тих, хто не хоче створювати фронтенд з нуля, існують офіційні стартові набори. Вже доступний Livewire starter kit на базі Livewire 3, Flux UI та Tailwind CSS v4. Він включає каталог, кошик, багатокроковий чекаут зі Stripe, кабінет клієнта та мультивалютність. Набір для Inertia (Vue та React) знаходиться у розробці.

Встановити набір можна командою:

php artisan shopper:kit:install shopper/livewire-starter-kit

# AI-Ready з Laravel Boost

Shopper підтримує Laravel Boost, що допомагає AI-агентам миттєво зрозуміти архітектуру проєкту. Boost автоматично виявляє правила та навички (skills) для розробки:

  • shopper-development — стандарти кодування та патерни моделей;
  • shopper-livewire — компоненти Livewire з Filament Forms & Tables;
  • extending-shopper — робота з меню, подіями та кастомізацією.

Працює з Claude Code, Cursor, Windsurf, GitHub Copilot та іншими інструментами, що підтримують Laravel Boost.

Вихідний код доступний на GitHub, а повна документація — на docs.laravelshopper.dev.

Популярні

Інше, що варто прочитати

16 Оновлено 07 травня, 2026

Обробка геопросторових даних за допомогою Laravel Magellan

Ви готові відкрити нові горизонти у роботі з геопросторовими даними в Laravel? Дізнайтеся, як за допомогою PostGIS та пакету Laravel-Magellan можна легко зберігати, запитувати та маніпулювати інформацією про розташування, перетворюючи ваші проекти на вражаючі рішення у сфері картографії та геолокації!

18 Оновлено 07 травня, 2026

Перетворення даних у типобезпечні DTO за допомогою пакету Data Model

Досліджуйте новий пакет Data Model для PHP, який спрощує процес гідратації об'єктів без зайвих складнощів! Дізнайтеся, як впровадження типобезпечних об'єктів може революціонізувати ваш підхід до розробки, читаючи нашу статтю

17 Оновлено 07 травня, 2026

Оптимізація запитів до бази даних за допомогою скорочених методів Laravel

Laravel пропонує зручні методи для роботи з датами, які значно спрощують запити до бази даних. Досліджуйте, як ці інтуїтивно зрозумілі функції допомагають створювати чіткі та зрозумілі умови для роботи з часовими даними!