Looking to hire Laravel developers? Try LaraJobs

laravel-inbox maintained by fr3on

Description
A local notification intercept dashboard for Laravel — caught and previewed in one place across all channels.
Author
fr3on
Last update
2026/04/11 17:26 (dev-main)
License
Links
Downloads
41

Comments
comments powered by Disqus

Laravel Inbox

Latest Version on Packagist GitHub Tests Action Status Total Downloads PHP Version Support Laravel Version Support License

Laravel Inbox is a premium local notification intercept dashboard for Laravel. It allows you to catch, inspect, and simulate notifications across all major channels in a beautiful, real-time interface.


Features

  • Multi-Channel Interception: Automatically catches notifications for Mail, Slack, SMS (Twilio/Vonage), Discord, Telegram, Push, WhatsApp, and Database.
  • Premium Simulations: High-fidelity UI mockups for mobile devices and chat apps.
  • Notifiable Inspector: Inspect the state of the Eloquent model associated with every notification.
  • Timeline Tracking: Correlate notifications to see a sequence of events for specific targets.
  • Resend Utility: Re-dispatch any captured notification with a single click.
  • Advanced Filtering: Instant, real-time search and channel filtering.
  • PWA Style UI: A fully responsive, mobile-optimized dashboard.

Installation

You can install the package via composer:

composer require fr3on/laravel-inbox --dev

The package will automatically register its service provider. To customize the installation, you can publish the config file:

php artisan vendor:publish --tag="inbox-config"

Configuration

By default, Laravel Inbox is only enabled when APP_DEBUG is true and APP_ENV is local.

// config/inbox.php

return [
    'enabled' => env('INBOX_ENABLED', env('APP_ENV') === 'local'),
    
    'path' => 'inbox', // The URL path for the dashboard
    
    'middleware' => ['web'], // Add your own auth middleware here if needed
    
    'gate' => null, // Optional Laravel Gate name for access control
];

Security

If you plan to use Laravel Inbox in a shared staging environment, we highly recommend protecting the route with a Gate:

// app/Providers/AuthServiceProvider.php

Gate::define('view-inbox', function ($user) {
    return str_ends_with($user->email, '@yourcompany.com');
});

Then update your config: 'gate' => 'view-inbox'.

Testing

composer test

License

The MIT License (MIT). Please see License File for more information.