khauto / sessionflashtoster
Laravel package for automatic toast notifications from session flash data
Installs: 1
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/khauto/sessionflashtoster
This package is auto-updated.
Last update: 2025-10-12 18:19:20 UTC
README
A lightweight Laravel package that automatically displays beautiful Toastr.js notifications for your Laravel session flash messages β no extra setup required.
π§© Features
β
Automatically detects session messages (success
, error
, warning
, info
)
β
Works out-of-the-box β just install it
β
Uses Toastr.js for modern toast notifications
β
Fully customizable (position, timeout, progress bar, etc.)
β
Publishable config and Blade view files
β
Compatible with Laravel 10 & 11
π¦ Installation
Install via Composer:
composer require khauto/sessionflashtoster
Laravel will auto-discover the service provider.
βοΈ Configuration (optional)
If you want to customize the Toastr settings, publish the config file:
php artisan vendor:publish --tag=sessionflashtoster-config
This will create:
config/sessionflashtoster.php
Example config:
return [ 'position' => 'toast-top-right', 'timeout' => 4000, 'progressBar' => true, ];
π§± Usage
Once installed, the package automatically shares your session flash messages with all Blade views.
Simply include the toaster script in your main layout (e.g. resources/views/layouts/app.blade.php
):
<!DOCTYPE html> <html lang="en"> <head> <title>My Laravel App</title> </head> <body> @yield('content') {{-- Include the toaster script --}} @include('toaster::scripts') </body> </html>
π₯ Trigger Notifications
Flash session messages from your controllers, routes, or Livewire components:
// In a controller return redirect()->back()->with('success', 'Profile updated successfully!');
Supported Session Keys
Type | Example Code |
---|---|
β Success | session()->flash('success', 'Action successful!'); |
β Error | session()->flash('error', 'Something went wrong.'); |
β οΈ Warning | session()->flash('warning', 'Be careful!'); |
βΉοΈ Info | session()->flash('info', 'Heads up!'); |
The corresponding Toastr notification will automatically appear on the next page load.
π§ͺ Quick Demo (optional)
Add these routes in routes/web.php
to test notifications:
Route::get('/test-toaster', function () { return view('test-toaster'); }); Route::get('/notify/{type}', function ($type) { return redirect('/test-toaster')->with($type, ucfirst($type) . ' notification triggered!'); });
Then create the test view:
<h1>Session Flash Toaster Test</h1> <a href="{{ url('/notify/success') }}">Success</a> | <a href="{{ url('/notify/error') }}">Error</a> | <a href="{{ url('/notify/info') }}">Info</a> | <a href="{{ url('/notify/warning') }}">Warning</a> @include('sessionflashtoster::scripts')
π¨ Example Toasts
- β Success β Green toast for success actions
- β Error β Red toast for errors
- β οΈ Warning β Orange toast for caution
- βΉοΈ Info β Blue toast for information
All triggered automatically by Laravelβs session flash messages.
β‘ Advanced Customization
Publish the Blade view if you want to customize Toastr assets or message rendering:
php artisan vendor:publish --tag=sessionflashtoster-views
This will create:
resources/views/vendor/sessionflashtoster/scripts.blade.php
You can modify it freely.
π§° Requirements
- PHP β₯ 8.1
- Laravel 10 or 11
πͺͺ License
This package is open-sourced under the MIT license.
π¨βπ» Developer
Developed with β€οΈ by Md Khairul Hasib
π§ Email: [mdkhasib22@gmail.com]
π GitHub: https://github.com/mdkhasib
β Support
If you like this package, please give it a β on GitHub!
Your support motivates continued development. π