artisanpack-ui / ecommerce-kanban-livewire
Livewire order kanban board for the ArtisanPack UI ecommerce engine.
Package info
github.com/ArtisanPack-UI/ecommerce-kanban-livewire
pkg:composer/artisanpack-ui/ecommerce-kanban-livewire
Requires
- php: ^8.3
- artisanpack-ui/core: ^1.0
- artisanpack-ui/ecommerce: ^1.2
- artisanpack-ui/hooks: ^1.2
- artisanpack-ui/livewire-ui-components: ^2.1
- illuminate/support: ^12.0|^13.0
- livewire/livewire: ^3.6|^4.0
Requires (Dev)
- artisanpack-ui/code-style: ^1.1
- artisanpack-ui/code-style-pint: ^1.1
- dealerdirect/phpcodesniffer-composer-installer: ^1.0
- friendsofphp/php-cs-fixer: ^3.75
- laravel/pint: ^1.26
- orchestra/testbench: ^10.2|^11.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-browser: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- pestphp/pest-plugin-livewire: ^4.0
Suggests
- artisanpack-ui/cms-framework: Adds the board to the cms-framework admin menu.
- artisanpack-ui/ecommerce-admin-livewire: Links the board from the admin's navigation and order screens, and opens full orders from a card.
- laravel/reverb: Real-time board sync across browsers through Laravel Echo (any Laravel broadcaster works).
Provides
None
Conflicts
None
Replaces
None
README
The order kanban board for the artisanpack-ui/ecommerce engine, built on
livewire-ui-components and
livewire-drag-and-drop. Staff see orders as cards in
columns by sub-status and move them by drag-and-drop, keyboard, or a "Move to…" dialog. Every move goes through the
engine, so WIP limits, the order status roll-up, and automations always apply. The board adds a filter bar, a card
slide-out, board-native column and card-widget editing, an automations panel, and real-time sync through Laravel Echo
(Reverb, Pusher, or any broadcaster) with a polling fallback. It renders inside the cms-framework admin or the
ecommerce admin when either is installed, and as a standalone page otherwise.
Screenshots
Requirements
- PHP 8.3+
- Laravel 12 or 13
- Livewire 3.6+ or 4
artisanpack-ui/ecommerce1.2+artisanpack-ui/livewire-ui-components2.1- Tailwind CSS 4 and daisyUI 5 (
~5.0) in your application's Vite build @artisanpack-ui/livewire-drag-and-drop2.1+ imported in your main script
Optional: artisanpack-ui/ecommerce-admin-livewire, artisanpack-ui/cms-framework, laravel/reverb (or any Laravel
broadcaster with Laravel Echo). See Requirements.
Installation
composer require artisanpack-ui/ecommerce-kanban-livewire php artisan ecommerce-kanban:install
The install command publishes config/artisanpack/ecommerce-kanban-livewire.php, prints the front-end lines, and checks
the engine version, the active boards, and real-time sync. It never edits your files.
Quick start
-
Add the board to your front end. Add the
@sourcelines the install command prints to your Tailwind entry, then install and import drag-and-drop:@source "../../vendor/artisanpack-ui/ecommerce-kanban-livewire/resources/views/**/*.blade.php"; @source "../../vendor/artisanpack-ui/ecommerce-kanban-livewire/src/**/*.php";
npm install @artisanpack-ui/livewire-drag-and-drop@^2.1.0
// resources/js/app.js import '@artisanpack-ui/livewire-drag-and-drop';
Then run
npm run build. See Front-End Setup. -
Grant access. The engine denies every ability by default, so the board returns 403 until you grant access. In a service provider's
boot():Gate::define( 'ecommerce.admin', fn ( $user ) => $user->is_admin );
Or define
ecommerce.kanbanBoard.viewAny,ecommerce.kanbanBoard.view,ecommerce.kanbanCard.move, andecommerce.kanbanBoard.updateindividually. See Authorization. -
Create a board in the ecommerce admin or through the engine's REST API, or seed a demo store with a board on a development database:
php artisan ecommerce:seed-demo
-
Open the board at
/ecommerce-kanban(theboard.route_prefixconfig key).
Boards poll for changes every 30 seconds. For live boards, set ECOMMERCE_KANBAN_BROADCAST=true, configure a
broadcaster, and set up Laravel Echo on window.Echo. See Real-Time Updates.
Documentation
- Documentation home
- Quick start guide
- Installation: requirements, configuration, front-end setup, layouts
- Real-time updates: broadcasting with Echo, polling fallback
- Usage: board picker, moving cards, filters, card detail, editing the board, automations
- Extending: hooks reference, card and toolbar actions, card widgets, filter controls, embedding components
- Accessibility and localization
- Advanced: authorization, Artisan commands, performance, browser tests
Contributing
As an open source project, this package is open to contributions from anyone. Please read through the contributing guidelines to learn more about how you can contribute to this project.
composer test # unit and feature tests composer lint # php-cs-fixer (dry run) and phpcs composer test:browser # browser suite; see docs/advanced/browser-tests.md
License
The MIT License. See LICENSE for details.



