amjadiqbal/laravel-notification-inbox
amjadiqbal/laravel-notification-inbox is a database-backed notification inbox for Laravel. It helps you store, retrieve, mark as read, and organize user notifications, making it easier to build in-app notification centers with a clean, simple API and read/unread status handling.
Initial assessment based on v0.1.2 release notes. The package is a Laravel notification-inbox interceptor that captures non-mail notification channels locally, with security controls around viewing/managing captured notifications and redaction before disk writes.
NotificationSending in register() makes interception more deterministic, but it also means the package must be treated as a global notification-pipeline participant, not just a UI add-on.manageNotificationInbox gate is a clear integration point: teams must explicitly grant delete/clear rights beyond inbox-view rights. Default local-only behavior is safe for development but must be reviewed for production roles.0.1.x version. Redaction is improved but still pattern-based: keys containing password, passcode, secret, otp, code, private_key, or webhook are masked, and code masking in text is opt-in. This reduces risk but does not eliminate sensitive-data exposure. The listener-order change can affect notification interception behavior globally, so regression testing is required. Wording clarifications confirm that mail and database notifications are still sent and that custom toX() code still runs, so the package should not be treated as a full notification kill switch.manageNotificationInbox gate, configure redact/redact_containing, decide whether to enable mask_codes_in_text, and validate channel behavior before production rollout.notification-inbox:prune and tune prune_lottery. 7) Roll out to a limited user group, then broaden access after security review.prune_lottery, but scheduling notification-inbox:prune is still required. High-volume notification environments should size storage, monitor table growth, and validate prune frequency.manageNotificationInbox gate is not mapped correctly; notification interception may behave differently if other listeners depend on running before the package’s NotificationSending listener; pruning may never run if the schedule is missed; and teams may incorrectly assume all notifications are suppressed when mail and database are still sent.How can I help you explore Laravel packages today?