Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Filament Notifications Tabs

Filament Notifications Tabs Laravel Package

zvizvi/filament-notifications-tabs

Adds Unread and All tabs with an unread-count badge to the Filament database notifications modal, plus per-notification delete and read/unread toggle actions. Configurable default tab and optional delete confirmation. For Filament v5 panels.

View on GitHub
Deep Wiki
Context7

Tabs and per-notification actions (delete, toggle read status) for the Filament database notifications modal.

Frequently asked questions about Filament Notifications Tabs
What does zvizvi/filament-notifications-tabs actually do?
It is a small presentation-layer plugin that adds Unread and All tabs, with an unread-count badge, to the Filament database notifications modal. It also replaces the default close button with per-notification actions: a trash button to delete the notification and a button to toggle read/unread status. It does not change how notifications are stored, queued, or delivered. The equivalent custom work is estimated at roughly one to three developer-days including tests.
Which Filament versions does this package support?
The README states compatibility with Filament v5 panels only, and support for v3 or v4 is unstated. Before starting a spike, read the package's composer.json constraints to confirm what is actually allowed and whether a CI matrix tests those versions. If your estate is on Filament v3 or v4, treat this as a non-starter until verified.
How do I install filament-notifications-tabs?
Run composer require zvizvi/filament-notifications-tabs:^0.0.2, add the @source directive for the package's Blade views to your Filament theme CSS, and rebuild your assets. Then register FilamentNotificationsTabsPlugin::make() in your panel's plugins array on a panel that already calls ->databaseNotifications(). There are no migrations or service provider settings to publish for basic use.
Why do the notification tabs look unstyled after installing?
The modal view uses Tailwind utility classes, so Tailwind must scan the package's Blade files or those classes will not be compiled. Add @source '../../../../vendor/zvizvi/filament-notifications-tabs/resources/views/**/*.blade.php' to your Filament theme CSS and rebuild, adjusting the number of ../ to match your theme file's location relative to vendor. If the path is wrong, the modal renders visibly broken with no error, so this is the most likely and most silent integration failure. Note the @source convention assumes Tailwind v4; teams on Tailwind v3 need to adapt using content globs or a compiled stylesheet, which is undocumented.
How do I make the notifications modal open on the All tab by default?
Pass 'all' to the defaultTab method when registering the plugin: FilamentNotificationsTabsPlugin::make()->defaultTab('all'). If you leave it out, the modal opens on the Unread tab. The Unread tab always shows a badge with the unread count.
How do I require confirmation before deleting a notification?
By default the delete button removes the notification immediately. Chain ->confirmDelete() on the plugin to show Filament's native confirmation dialog first: FilamentNotificationsTabsPlugin::make()->confirmDelete(). You can combine it with defaultTab in the same fluent chain.
Does the package work if my panel does not use database notifications?
No. It only augments the existing Filament database notifications modal, so the panel must have ->databaseNotifications() enabled. If your app delivers notifications only by email, Slack, or another channel, the package provides no value. It also does not touch the notifications table schema or delivery pipeline.
Is this package production-ready, and what are the maintenance risks?
It is pre-1.0 at ^0.0.2 with a single maintainer, low download counts, and no test suite mentioned in the maturity signals, so semantic-versioning guarantees are effectively absent and patch releases may contain breaking changes. The larger technical risk is coupling: a package that adds tabs and swaps the modal's close button likely overrides or extends Filament's own notification modal view and relies on internal class names, which can break on panel upgrades without a major-version signal. Check whether it composes via render hooks or an override, and pin the version in composer.json. The README badges and banner alt text reference a different package (zvizvi/relation-manager-repeater), which looks like copy-paste residue and suggests low review rigor.
Are the delete and toggle read/unread actions authorized or audit-logged?
This is not documented; the actions appear to be local state mutations on the notification record rather than event-emitting operations. Verify against the source whether they respect Filament authorization or policy hooks, since otherwise delete may be unconditional for any authenticated panel user. If you need an audit trail for notification dismissal in a regulated context, plan to add your own logging or wrap the actions.
Can I customize the package translations?
Yes. The package ships with English and Hebrew translations, and you can publish and override them with the standard php artisan vendor:publish command referenced in the README. Publish only the lang files you intend to change so future package updates are easier to reconcile. Confirm the exact publish tag in the README before running it.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
steadrun/laravel-monitor
labyrinthe/connect-laravel
elmogy/layan
drewdan/sentinel-client
dskripchenko/laravel-llm
fatryst/nuonuo
stevenay/myanfont
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin