khauto/sessionflashtoster
最新稳定版本:v1.0.2
Composer 安装命令:
composer require khauto/sessionflashtoster
包简介
Laravel package for automatic toast notifications from session flash data
README 文档
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. 🙏
统计信息
- 总下载量: 2
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-10-12