Magewire is a Laravel Livewire port for Magento 2.

Related tags

Laravel magewire
Overview

Magewire

style CI hyva

Magewire is a Laravel Livewire port for Magento 2. The goal is to make it fun and easy to build modern, reactive and dynamic interfaces, without leaving the comfort of Magento's core layout and template systems. Magewire can be the missing piece when you intend to build dynamic and reactive features, but don't require or feel comfortable working with a full JavaScript framework like Vue or React.

Installation

composer require magewirephp/magewire

Magewire is a Hyva Themes first Magento 2 extension and won't work on a RequireJS dependent Magento theme out of the box. Go and check out the compatibility section to enable all the Magewire richness in your Blank or Luma projects.

Documentation

Roadmap

  • Unit & Integration tests
  • Single and Multi file upload integrations
  • Form integration including rule & validation options.
  • Modal and Dialog integrations.
  • Enrich pagination functionality.
  • Advanced Query String manipulation.
  • Throttling capabilities.
  • Wireable Interface concept for public object properties like e.g. DataObject.
  • Parent / Children system for Emit Up compatibility.
  • Make the $wire AlpineJS component object accessible.
  • Deprecate the assign() method before the first release and come up with a lifecycle alternative.

Tools

Security Vulnerabilities

If you discover a security vulnerability within Magewire, please create a PR or send an e-mail to Willem Poortman via [email protected]. All security vulnerabilities will be promptly addressed.

License

Copyright © Willem Poortman

Magewire is open-sourced software licensed under the MIT license.

This Magewire port would not have been possible without the the existence of the Laravel Livewire project, it's creator Caleb Porzio and all contributors with their tireless efforts and dedication. A big shoutout and thank you to all of them for the inspiration and motivation to make this work in- and outside the Laravel ecosystem! ❤️ ❤️ ❤️

Comments
  • Docs: Fix Component-Based Restricted Methods Definition

    Docs: Fix Component-Based Restricted Methods Definition

    opened by pykettk 3
  • check for a setter method 'set[PropertyName]' when property is hydrated

    check for a setter method 'set[PropertyName]' when property is hydrated

    If the code that sets a property checks for existence of a setter method in component class, one can inject logic at the time of setting the property at hydration.

    Usage case:

    Building a custom pagination component, the current category is added as a queryString to be populated with hydration.

    class Pagination extends Component\Pagination
    {
        public $currentCategory;
    
        protected $queryString = [
            'page',
            'pageSize',
            'currentCategory'
        ];
    

    This works fine, and the currentCategory property is 100% populated on pagination clicks, however, when one tries to load the current product collection, the current layer will default to root category.

    public function getAllPageItems(): array
        {
            return $this->listProduct->getLoadedProductCollection()->getItems();
        }
    

    which end up on

    Magento\Catalog\Block\Product\ListProduct

    /**
         * Retrieve loaded category collection
         *
         * @return AbstractCollection
         */
        public function getLoadedProductCollection()
        {
            $collection = $this->_getProductCollection();
    
            $categoryId = $this->getLayer()->getCurrentCategory()->getId();
            foreach ($collection as $product) {
                $product->setData('category_id', $categoryId);
            }
    
            return $collection;
        }
    
    $categoryId = $this->getLayer()->getCurrentCategory()->getId();
    

    will result to the default root category

    so, by using a setter in the Pagination class, which is called instead of placing the property directly, one can add logic to re-populate the base layout category.

    in pagination component class:

     public function setCurrentCategory($value) {
            $this->currentCategory = (int)$value;
            $this->listProduct->getLayer()->setCurrentCategory((int)$value);
        }
    

    The ability to simply intercept property hydration via a setter metod can have other usage case benefits, and not require unneeded plugins/code extending.

    This does however place the responsibility to populate the property with the developer making the code. I think that is ok, and would be expected, when placing the setter method.

    image

    enhancement 
    opened by ProxiBlue 3
  • fix issue where public property values are restored to default value

    fix issue where public property values are restored to default value

    We ran into this issue during yesterdays hackathon. It seems like the arguments passed to array_merge_recursive should be switched. I the old situation the default values are assigned to the $overwrite variable for non array value and array keys existing in the default value on array properties. This fixed the issue for me.

    opened by ldrooij 2
  • Fix PHP 8.1 error

    Fix PHP 8.1 error

    The type of the $rules array in the Hyvä Checkout is stricter than the array here. So adding the type hint fixes the following error;

    Fatal error: Type of Hyva\CheckoutDefault\Magewire\Component\Checkout\AddressForm::$rules must not be defined (as in class Magewirephp\Magewire\Component\Form) in vendor/hyva-themes/checkout-default/src/Magewire/Component/Checkout/AddressForm.php on line 36
    
    opened by peterjaap 2
  • fix: type annotations for dispatchBrowserEvent

    fix: type annotations for dispatchBrowserEvent

    Our linter failed because we passed an array of data into the method instead of null - since only ever passing null to the method does not make sense but the type can really be anything this should be mixed instead.

    opened by kolaente 1
  • fix various docs errors

    fix various docs errors

    Hello,

    three little fixes to the docs:

    1. The namespace was still Livewire
    2. The using still contained Livewire
    3. The item was missing a mandatory type definition.
    opened by Morgy93 1
  • Enforce lowercase layout handle names

    Enforce lowercase layout handle names

    Magento always lowercases all parts of the request path when building the action layout handle name. For example, a request to foo/Bar/Baz will load an action handle foo_bar_baz.

    The $post['fingerprint']['handle'] value contains a not lowercased version of the handle, as returned by $request->getFullActionName() (see \Magewirephp\Magewire\Model\ComponentManager::createInitialRequest).

    Because of this discrepancy, loading a page using a path with some capital letters shows the page during the preceding request, but for subsequent requests an error {"message":"Magewire component \"the-component-name\" could not be found","code":500} is shown.

    This PR applies the same lower-case normalization to the handle in subsequent requests as Magento does during the preceding request.

    opened by Vinai 0
  • Avoid Alpine.deferLoadingAlpine conflicts

    Avoid Alpine.deferLoadingAlpine conflicts

    Other scripts might also set Alpine.deferLoadingAlpine, for example the Hyvä x-intersect plugin backport. This backwards compatible change ensures they are not overwritten.

    opened by Vinai 0
Releases(1.7.4)
  • 1.7.4(Nov 18, 2022)

    Added

    • All emits of any type now also become an observable event by @wpoortman in https://github.com/magewirephp/magewire/pull/69

    Fixed

    • Changed [at]apply styles into plain css for the error iframe by @wpoortman in https://github.com/magewirephp/magewire/pull/70

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.7.3...1.7.4

    Source code(tar.gz)
    Source code(zip)
  • 1.7.3(Nov 9, 2022)

    Improved

    • Redirect hydrator external & store code urls support by @wpoortman in https://github.com/magewirephp/magewire/pull/67

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.7.2...1.7.3

    Source code(tar.gz)
    Source code(zip)
  • 1.7.2(Nov 3, 2022)

    Fixed

    • Bug for single update requests where it wasn't a "fireEvent" type by @wpoortman in https://github.com/magewirephp/magewire/pull/66

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.7.1...1.7.2

    Source code(tar.gz)
    Source code(zip)
  • 1.7.1(Oct 31, 2022)

    Added

    • Validate only form feature implementation by @wpoortman in https://github.com/magewirephp/magewire/pull/65

    Fixed

    • Enforce lowercase layout handle names by @Vinai in https://github.com/magewirephp/magewire/pull/62
    • Fixed issue by adding the refreshing awareness by @wpoortman in https://github.com/magewirephp/magewire/pull/64

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.7.0...1.7.1

    Source code(tar.gz)
    Source code(zip)
  • 1.7.0(Oct 25, 2022)

    Added

    • Alpine v2 and v3 compatibility by @Vinai in https://github.com/magewirephp/magewire/pull/61

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.6...1.7.0

    Source code(tar.gz)
    Source code(zip)
  • 1.6.6(Oct 20, 2022)

  • 1.6.5(Oct 12, 2022)

    A one-on-one copy of the v1.6.4 release where we re-tagged 1.6.4 which shouldn't have happend since it's not best practise to do so. For those who aren't aware of that, 1.6.5 is now also available in order to have Composer pick it up when upgrading.

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.3...1.6.5

    Source code(tar.gz)
    Source code(zip)
  • 1.6.4(Oct 11, 2022)

    Added

    • Offload feature by @wpoortman in https://github.com/magewirephp/magewire/pull/55

    Fixed

    • Component with wrong or no children assigned in JS by @wpoortman in https://github.com/magewirephp/magewire/pull/56
    • Avoid Alpine.deferLoadingAlpine conflicts by @Vinai in https://github.com/magewirephp/magewire/pull/59
    • Correct call to getFoo() in example by @Vinai in https://github.com/magewirephp/magewire/pull/60
    • Remove outdated docs on component id hashing by @Vinai in https://github.com/magewirephp/magewire/pull/58
    • Children JSON node didnt have all the correct children by @wpoortman in https://github.com/magewirephp/magewire/pull/57
    • Bugfix where if the parent component has an exception, it will leave the children node empty @wpoortman in https://github.com/magewirephp/magewire/pull/56

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.3...1.6.4

    Source code(tar.gz)
    Source code(zip)
  • 1.6.3(Aug 10, 2022)

    Added

    • Developers README quote by @ryan-copeland in 3bca8d7022dd7ff70cf35c7052ac237110dd4f08
    • Developer README quote by @pykettk in b86971a38811c25f7dece255500cfb91e195d0dc
    • Git ignore by @wpoortman in 7155cd5daacfd417b23ae0bc223cb51d150b0b90
    • Magewire CSS into head by @wpoortman in 32d6adcfcbea192eb783154368a8123631cecbcb

    Changed

    • JS lib upgrade from 2.6.7 to 2.10.5 by @wpoortman in 0b88ba0203adf6e1ce40e8642d09b30f94621a33
    • Docs: Update PHP Lifecycle Notes by @pykettk in https://github.com/magewirephp/magewire/pull/39
    • Docs: Update Message Dispatch Documentation by @pykettk in https://github.com/magewirephp/magewire/pull/44
    • Deprecated Livewire vintage controller by @wpoortman in a5818432a2f9b7ac3c113d8d16ebbd2f903ccb76

    Fixed

    • Type annotations for dispatchBrowserEvent by @kolaente in https://github.com/magewirephp/magewire/pull/41

    New Contributors

    • @kolaente made their first contribution in https://github.com/magewirephp/magewire/pull/41

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.2...1.6.3

    Source code(tar.gz)
    Source code(zip)
  • 1.6.2(Jun 11, 2022)

    Changed

    • Docs: Fix Component-Based Restricted Methods Definition by @pykettk in https://github.com/magewirephp/magewire/pull/37
    • Docs: Add Component Array Property Access Example by @pykettk in https://github.com/magewirephp/magewire/pull/38

    Fixed

    • Non-excisting zero HTTP status code exception

    New Contributors

    • @pykettk made their first contribution in https://github.com/magewirephp/magewire/pull/37

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.0...1.6.2

    Source code(tar.gz)
    Source code(zip)
  • 1.6.1(Jun 5, 2022)

    Fixed

    • Re-integrate the determineTemplate method by @wpoortman in ad440fde9ff4c52bbe5661ef9a00c363a8664679

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.6.0...1.6.1

    Source code(tar.gz)
    Source code(zip)
  • 1.6.0(Apr 20, 2022)

    Added

    • Children server memo attribute to make parent Magewire component aware of their children by @wpoortman in #31
    • Emit Up compatibility by @wpoortman in in #31
    • Features & Examples docs page now has a leading index for improve the overview @wpoortman in in #31

    Improved

    • Subsequent request exception handling and logging by @wpoortman in ede0f7f88e4a3df432f2b701a98139aa7f05b8cc
    • Preceding component exception handling by @wpoortman in e40b4bdd9da687482bce271e7e887e056833e6fd
    • Application URL issue fix for specific domain use cases by @wpoortman in e3e3127a8243c2ea9e7e9021bbff792a93d1f8a7
    • Minor event listener Hydrator enhancement by @wpoortman in a73321df4e4a9e7f6691ef1fe123de457a65b198
    • Component lifecycle improvements (boot, mount, booted, hydrate, dehydrate) by @wpoortman #33
    • Component lifecycle improvements (boot, mount, booted, hydrate, dehydrate) by @wpoortman #34

    Fixed

    • Component (re-) initialization on Component boot to avoid shared instance conflicts by @wpoortman in 9ace19d1ed411d5de62a5ade98f325e4dc6f89e8
    • Form key expiration browser popup on update request @wpoortman in #30

    Thanks you for being helpful

    • @6ui11em
    • @speedupmate
    • @ryan-copeland

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.5.0...1.6.0

    Source code(tar.gz)
    Source code(zip)
  • 1.5.0(Apr 3, 2022)

    Added

    • Post Deploy hydrator to force a page refresh on breaking releases @wpoortman in 939a012e1358a97494350dd4f7b1179b0dc67fe7
    • Form key expiration now forces a page refresh instead of a infinite loader by @wpoortman in https://github.com/magewirephp/magewire/pull/26
    • ClearErrors Concern method by @wpoortman in e90b1089f9b9cfffbae979c36fe180b77622476f
    • Catching global form validation exceptions by @wpoortman in e90b1089f9b9cfffbae979c36fe180b77622476f
    • Developer Tools docs by @ryanhissey in https://github.com/magewirephp/magewire/pull/28

    Changed

    • Subsequent exception handling by @wpoortman in https://github.com/magewirephp/magewire/pull/26

    Removed

    • Removed the SHA1 component ID hashing by @wpoortman in 602b38deb526c0155539222c238c8300c9e84f8d
    • Removed a couple of lifecycle exception classes by @wpoortman in @wpoortman in https://github.com/magewirephp/magewire/pull/26

    Fixed

    • Removed the property types by @wpoortman in 5a4bc08f0aa671dd21baec95da64122a8a24d03b
    • Minor documentation improvements by @wpoortman in 86c018c4b9f4ce04601545390871926024acf647
    • Documentation improvements by @wpoortman in cfc2f66ee6e47a5d0393f1850393b8bfad3569ca

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.4.0...1.5.0

    Source code(tar.gz)
    Source code(zip)
  • 1.4.0(Mar 25, 2022)

    Added

    • Automatically assign $magewire as template variable by @Vinai in https://github.com/magewirephp/magewire/pull/23
    • [feature/js-improvements]:+ New magewire:available Document event by @wpoortman in https://github.com/magewirephp/magewire/pull/24

    Improved

    • Improvement/property binding by @wpoortman in https://github.com/magewirephp/magewire/pull/22

    Changed

    • [feature/phpsevenfour]:+ PHP7.4 compatibility by @wpoortman in https://github.com/magewirephp/magewire/pull/25
    • Property binding lifecycle who now matches with Livewire @wpoortman in https://github.com/magewirephp/magewire/pull/22

    New Contributors

    • @Vinai made their first contribution in https://github.com/magewirephp/magewire/pull/23

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.3.0...1.4.0

    Source code(tar.gz)
    Source code(zip)
  • 1.3.0(Jan 19, 2022)

    Added

    • Introduction of the lifecycle booted method by @wpoortman https://github.com/magewirephp/magewire/commit/adc46e01b43bad49cba8758fc704b9e3c57d0573
    • Appending component DOM end marker by @wpoortman https://github.com/magewirephp/magewire/commit/e0f42ad55c742925d61a64475526d33fc56f924d

    Upgraded

    • Livewire JS lib from v2.8.0 to v2.9.0 by @wpoortman https://github.com/magewirephp/magewire/commit/a06307a02fcca1e20ceffca9eaf4c93bf79b4304

    Fixed

    • Application URL now uses the full base URL instead of the controller route by @wpoortman https://github.com/magewirephp/magewire/commit/a06307a02fcca1e20ceffca9eaf4c93bf79b4304
    • Set nested property value via magic action bugfix by @wpoortman https://github.com/magewirephp/magewire/commit/3cbf14a78849b262469a8279c9e2fb22c34b7263

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.2.0...1.3.0

    Source code(tar.gz)
    Source code(zip)
  • 1.2.0(Dec 20, 2021)

    Added

    • Form component introduction by @wpoortman https://github.com/magewirephp/magewire/commit/1a47f61eb55e6451744fa9243f406d8f15abca80
    • Form documentation by @wpoortman https://github.com/magewirephp/magewire/commit/c49808f2159278046bd6510fab221d0ae48c106d
    • Ability to add layout handles on subsequent requests by @wpoortman https://github.com/magewirephp/magewire/commit/795e9eaad6905d80a4bfdcbdfb7b0894bc81d743
    • AcceptableException by @wpoortman https://github.com/magewirephp/magewire/commit/c88b05abb5868386a85c1601a27372e9028d3cb8
    • Combine Magewire with AlpineJS docs @wpoortman https://github.com/magewirephp/magewire/commit/77715cd155d41616c63613ad9f4c9b9667a0ec1b

    Changed

    • Nested property compatibility improvements by @wpoortman https://github.com/magewirephp/magewire/commit/d0b4ba1666db9bc5c5aace96e0bfcf11c4cb1776
    • Error response data only available when set by @wpoortman https://github.com/magewirephp/magewire/commit/e976c1b976fcaf857d911297f00bf6643ddff765

    Removed

    • Intersect plugin by @wpoortman https://github.com/magewirephp/magewire/commit/fcfd5c64fd72d2150c77b7cc5a8b13f7d067b10e

    Fixed

    • Fix typo by @ProxiBlue in https://github.com/magewirephp/magewire/pull/16

    New Contributors

    • @ProxiBlue made their first contribution in https://github.com/magewirephp/magewire/pull/16

    Full Changelog: https://github.com/magewirephp/magewire/compare/1.1.0...1.2.0

    Source code(tar.gz)
    Source code(zip)
  • 1.1.0(Nov 29, 2021)

    Added

    • $this->reset() property reset feature by @wpoortman in https://github.com/magewirephp/magewire/pull/13
    • wire:ignore feature explanation by @wpoortman in https://github.com/magewirephp/magewire/pull/10/commits/93cc93cc8d7210e3e30e198c0f307e1c67315d93
    • $wire AlpineJS compatibility with separate docs markdown by @wpoortman https://github.com/magewirephp/magewire/commit/77715cd155d41616c63613ad9f4c9b9667a0ec1b
    • Nested array property sync overhaul by @wpoortman https://github.com/magewirephp/magewire/pull/10/commits/013ebda1c8e861f410a8f7ac436f25b36ef6fe1c
    • $params attribute for $this->emitToRefresh() by @wpoortman https://github.com/magewirephp/magewire/pull/9/commits/b6eab4620f39285a39b1ae8fa2b38adb45b9ce0c

    Updated

    • Upgrade Livewire.js to v2.8.0 by @wpoortman https://github.com/magewirephp/magewire/commit/d744b3caf351a1f1e7c08526cc3df06ac6f7490a

    Fixed

    • Fix various docs errors by @Morgy93 in https://github.com/magewirephp/magewire/pull/12

    New Contributors

    • @Morgy93 made their first contribution in https://github.com/magewirephp/magewire/pull/12

    Full Changelog: https://github.com/magewirephp/magewire/commits/1.1.0

    Source code(tar.gz)
    Source code(zip)
  • 1.0.0(Nov 29, 2021)

    Magewire is a Laravel Livewire port for Magento 2. The goal is to make it fun and easy to build modern, reactive and dynamic interfaces, without leaving the comfort of Magento's core layout and template systems. Magewire can be the missing piece when you intend to build dynamic and reactive features, but don't require or feel comfortable working with a full JavaScript framework like Vue or React.

    It's been a while, but it's finally here! After months of working on this project, I'm extremely proud to finally call Magewire production ready! Over time I will continue to fix bugs and implement new exciting features.

    Source code(tar.gz)
    Source code(zip)
Owner
Magewirephp
A Laravel Livewire port for Magento 2. Build modern, reactive and dynamic interfaces, without leaving the comfort of the layout & template systems.
Magewirephp
This is a Laravel port of the local_time gem from Basecamp.

This is a Laravel port of the local_time gem from Basecamp. It makes it easy to display date and time to users in their local time. Its Blade componen

Tony Messias 56 Oct 7, 2022
Asset Component is a port of Laravel 3 Asset for Orchestra Platform.

Asset Component is a port of Laravel 3 Asset for Orchestra Platform. The component main functionality is to allow asset declaration to be handle dynamically and asset dependencies can be resolve directly from the container. It however is not intended to becoma an asset pipeline package for Laravel, for such purpose we would recommend to use Grunt or Gulp.

Orchestra Platform 54 Mar 31, 2022
Adds phone number functionality to Laravel based on the PHP port of Google's libphonenumber API by giggsey.

Laravel Phone Adds phone number functionality to Laravel based on the PHP port of Google's libphonenumber API by giggsey. Table of Contents Demo Insta

null 2.1k Jan 2, 2023
PHP port of Underscore.js

Underscore.php Underscore.php is a PHP port of Underscore.js. In addition to porting Underscore's functionality, Underscore.php includes matching unit

Brian Haveri 1.2k Dec 25, 2022
Adds phone number functionality to TYPO3 based on the PHP port of Google's libphonenumber API by giggsey

TYPO3 Phone Adds phone number functionality to TYPO3 based on the PHP port of Google's libphonenumber API by giggsey. Installation composer require si

Simon Schaufelberger 3 Oct 25, 2022
A TALL (Tailwind CSS, Alpine.js, Laravel and Livewire) Preset for Laravel

Laravel TALL Preset A front-end preset for Laravel to scaffold an application using the TALL stack, jumpstarting your application's development. If yo

Laravel Frontend Presets 1.8k Jan 7, 2023
Laravel Livewire Excel Upload with Progressbar

Laravel Livewire Excel Upload with Progressbar This is sample project, that explains how to import Excel files with progress bar Steps to run project

Prabakaran T 5 Oct 6, 2022
Belich Tables: a datatable package for Laravel Livewire

Belich Tables is a Laravel package base on Livewire and AlpineJS that allows you to create scaffold datatables with search, column sort, filters, pagination, etc...

Damián Aguilar 11 Aug 26, 2022
Laravel Livewire full page component routing.

Laravel Livewire Routes Laravel Livewire full page component routing. This package allows you to specify routes directly inside your full page Livewir

null 22 Oct 6, 2022
A laravel Livewire Dynamic Selects with multiple selects depending on each other values, with infinite levels and totally configurable.

Livewire Combobox: A dynamic selects for Laravel Livewire A Laravel Livewire multiple selects depending on each other values, with infinite levels of

Damián Aguilar 25 Oct 30, 2022
Dynamic Laravel Livewire Bootstrap 5 modals.

Laravel Livewire Modals Dynamic Laravel Livewire Bootstrap 5 modals. Requirements Bootstrap 5 Installation Require the package: composer require basti

null 55 Dec 27, 2022
Laravel Livewire form component with declarative Bootstrap 5 fields and buttons.

Laravel Livewire Forms Laravel Livewire form component with declarative Bootstrap 5 fields and buttons. Requirements Bootstrap 5 Installation composer

null 49 Oct 29, 2022
Auto generate routes for Laravel Livewire components

livewire-auto-routes Auto generate routes for Laravel Livewire Components. Requirements Livewire 2 Laravel 8 php 8 Installation composer require tanth

Tina Hammar 19 May 11, 2022
Laravel Livewire UI, Auth, & CRUD starter kit.

Laravel Livewire Ui This package provides Laravel Livewire & Bootstrap UI, Auth, & CRUD scaffolding commands to make your development speeds blazing f

null 97 Nov 15, 2022
Laravel 8 + CoreUI + Livewire + Datatables (CRUD)

Laravel 8 + CoreUI + Livewire + Datatables About Laravel 8 + CoreUI + Livewire Datatables Whats Inside Laravel Core UI - (https://github.com/HZ-HBO-IC

Muhammad Rheza Alfin 38 Nov 3, 2022
Livewire component that brings Spotlight/Alfred-like functionality to your Laravel application.

About LivewireUI Spotlight LivewireUI Spotlight is a Livewire component that provides Spotlight/Alfred-like functionality to your Laravel application.

Livewire UI 792 Jan 3, 2023
Dynamic Laravel Livewire Bootstrap toasts.

Laravel Livewire Toasts This package allows you to dynamically show Bootstrap toasts via Laravel Livewire components. Documentation Requirements Insta

null 13 Nov 12, 2022
Laravel UI, Auth, & CRUD scaffolding package using Bootstrap & Livewire.

bastinald/ux Laravel UI, Auth, & CRUD scaffolding package using Bootstrap & Livewire. Features Automatic migrations Automatic routing Automatic passwo

null 33 Nov 26, 2022
Laravel package integrating PHP Flasher into Livewire applications

A powerful and flexible flash notifications system for PHP, Laravel, Symfony ?? PHP Flasher helps you to add flash notifications to your PHP projects.

PHP Flasher 9 Jul 5, 2022