Search by

nawasara / toaster

pringgojsnawasara

Lightweight, Alpine-based toast notification component for Laravel and Livewire applications.

Package info

github.com/nawasara/toaster

Language:Blade

pkg:composer/nawasara/toaster

Statistics

Installs: 336

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.1 2026-09-14 02:17 UTC

This package is auto-updated.

Last update: 2026-09-14 02:28:54 UTC


README

Lightweight, Alpine-based toast notification component for Laravel and Livewire applications. Drop one component into your layout and trigger toasts from JavaScript, Livewire, or session flash.

Features

  • Four toast types: success, error, warning, info
  • Configurable position: nine corner/edge anchors
  • Optional progress bar countdown indicator
  • Dark-mode aware: respects the host application's theme
  • Mobile responsive
  • Triggers from anywhere: JavaScript (window.Toast), Livewire dispatch, or Laravel session flash
  • Auto-init from flash: shows the toast on the next page load when you redirect with a flash payload

Installation

composer require nawasara/toaster

Auto-discovered. Drop the toaster + script components into your layout:

<x-nawasara-toaster::script />

{{-- … your content … --}}

<x-nawasara-toaster::toaster position="top-right" :duration="5000" />

Usage

From JavaScript

window.Toast.success('Saved successfully');
window.Toast.error('Something went wrong');
window.Toast.warning('Heads up');
window.Toast.info('FYI');

From Laravel session flash

session()->flash('toast', [
    'type' => 'success',
    'message' => 'Saved successfully',
]);

return redirect()->back();

The toaster auto-loads the flash payload via window.Laravel.toast on the next page render.

From Livewire

Use the HasToaster trait if you prefer session-flash style (works after a redirect):

use Livewire\Component;
use Nawasara\Toaster\Concerns\HasToaster;

class MyComponent extends Component
{
    use HasToaster;

    public function save()
    {
        // …
        $this->alert('success', 'Saved successfully');
    }
}

For real-time toasts inside the same Livewire request (no page reload), use Nawasara\Ui\Livewire\Concerns\HasBrowserToast from nawasara/ui. It dispatches a browser toast event that the toaster listens to.

Author

Pringgo J. Saputro <odyinggo@gmail.com>

License

MIT