Complete notification system with toast messages, colors, icons, and actions for Laravilt. Display beautiful toast notifications with success, danger, warning, and info states. Supports dismissible notifications, custom durations, and action buttons.
- π¨ Multiple States - Success, danger, warning, info, and custom states
- π― Customizable - Title, body, icon, color, and duration
- β¨ Actions - Add custom action buttons to notifications
- β±οΈ Auto-dismiss - Configurable duration with manual dismiss option
- π Icon Support - Heroicons and Lucide icon integration
- π± Responsive - Beautiful toast notifications on all devices
- β‘ Helper Functions - Global notification helpers for easy use
composer require laravilt/notificationsThe package will automatically register its service provider.
use Laravilt\Notifications\Notification;
// Success notification
Notification::success()
->title('Success!')
->body('User created successfully')
->send();
// Danger notification
Notification::danger()
->title('Error!')
->body('Something went wrong')
->send();
// Warning notification
Notification::warning()
->title('Warning!')
->body('Please check your input')
->send();
// Info notification
Notification::info()
->title('Info')
->body('New update available')
->send();
// Custom notification
Notification::make()
->title('Custom Notification')
->body('This is a custom notification')
->icon('bell')
->color('purple')
->duration(5000)
->dismissible()
->send();// Global helper functions
notify()->success('User created successfully');
notify()->danger('Something went wrong');
notify()->warning('Please check your input');
notify()->info('New update available');
// With title and body
notify()->success(
title: 'Success!',
body: 'User created successfully'
);
// Custom notification
notify()
->title('Custom')
->body('Message')
->icon('bell')
->color('primary')
->send();title(string $title)- Set notification titlebody(string $body)- Set notification body/messageicon(string $icon)- Set notification iconcolor(string $color)- Set notification colorduration(int $milliseconds)- Set auto-dismiss durationdismissible(bool $dismissible = true)- Make notification dismissiblestatus(string $status)- Set notification statusactions(array $actions)- Add action buttonssend()- Send the notification
success()- Success state (green)danger()- Danger/error state (red)warning()- Warning state (orange)info()- Info state (blue)
success- Greendanger- Redwarning- Orangeinfo- Blueprimary- Primary brand colorsecondary- Secondary color
Publish the config file:
php artisan vendor:publish --tag="laravilt-notifications-config"Publish the plugin assets:
php artisan vendor:publish --tag="laravilt-notifications-assets"Publish the views:
php artisan vendor:publish --tag="notifications-views"Publish the migrations:
php artisan vendor:publish --tag="notifications-migrations"The notifications are automatically available in your Inertia.js pages via the shared data.
<template>
<NotificationContainer />
</template>
<script setup>
import NotificationContainer from '@/components/NotificationContainer.vue'
</script>composer testcomposer formatcomposer analyseThe MIT License (MIT). Please see License File for more information.
