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

Lumen Notification Laravel Package

lab123/lumen-notification

A lightweight notification package for Lumen that brings a Laravel-style API for sending alerts through mail, database, and other channels. Simple to install and configure, it suits microservices and small APIs that need reliable user notifications without pulling in the full framework.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy vs. adopt for notification delivery in a Lumen service. Still the primary framing: (a) hand-roll mail/queue plumbing, (b) migrate the service to full Laravel, or (c) backport the notification layer into Lumen. Release 1.0.0 sharpens option (c) — a 1.0.0 tag is an API-stability claim, so the adopt path now carries a "we can pin ^1.0 and expect no breaking churn" expectation, which is new information versus the 0.1.0-beta.2 era.
  • Security-exception governance (new, and now the biggest PM decision here). Adopting 1.0.0 on Laravel/Lumen 10 or 11 requires suppressing advisory PKSA-zwc5-qtrz-zm1n in composer audit / your dependency scanner, because there is no fix upstream. That is not a package-quality problem — it's an org policy decision: do we allow a documented, time-boxed audit ignore, who signs it, and when is it re-reviewed? A PM should own the policy, not the exception ticket. Getting this answered once sets precedent for every future "no upstream fix" case.
  • Runtime-floor decision. The 1.0.0 bump to PHP ^8.1 means adoption is now bundled with a PHP upgrade for any service below 8.1. Scope that separately — a runtime upgrade can dwarf the notification ticket and may have its own roadmap slot. This is a sequencing decision, not a delivery detail.
  • Feature-parity sequencing on a microservice roadmap. Unchanged: this gets you to the first channel (mail) and stops. Multi-channel, templating, preference centers, and delivery analytics remain explicitly out of scope, which caps what you can promise this quarter.
  • Framework-consolidation timing + legacy freeze. 1.0.0 confirms Lumen 5–9 is frozen at 0.1.0-beta.2 — no forward path, no security backports. If any part of the estate still runs those, "stay on the beta forever" is now the official option, and that should be recorded as accepted risk or a migration trigger.
  • Third-party dependency risk posture. Adoption metrics are unchanged (2 stars, 0 dependents, single publisher). 1.0.0 is a maintenance activity signal, not a validation signal. The correct decision it supports is the policy question: does the org permit low-adoption, single-maintainer glue for non-critical paths, and does it require vendoring? Recommendation stays: vendor the source, don't list it as a live dependency.
  • Support and SLA scoping. Still no support contract. Notification delivery — including the advisory suppression — is our operational responsibility.

When to Consider This Package

Reasonable fit when:

  • You run PHP 8.1+ and Lumen 10/11 or Laravel 10–13 (the versions 1.0.0 explicitly targets), and need Laravel-style notifications — mail at minimum, ideally database/queue — with minimal ceremony.
  • The need is a thin channel layer: transactional email, internal alerts, a few Notifiable models. Not high-volume, not multi-tenant, not user-configurable preferences.
  • Security can approve a documented composer audit ignore for PKSA-zwc5-qtrz-zm1n, with a named owner and a re-review date tied to an upstream fix landing. If your pipeline hard-fails on any advisory and exceptions are slow, budget calendar time for this, not just engineering time.
  • The team treats it as MIT source to read, vendor, and own. At this size — service provider, published mail/services config, make:notification command, notifications table migration — inlining it is roughly a day and removes both the supply-chain question and the dependency-audit question. 1.0.0 makes this cleaner because the surface is now declared stable.
  • You need the artisan scaffolding ergonomics more than runtime sophistication.

Look elsewhere (or build) when:

  • Any service on PHP <8.1 or Lumen ≤9. 1.0.0 excludes you and sends you to 0.1.0-beta.2, which is a dead end — no fixes, no support. Treat that as a migration trigger, not an option.
  • You cannot get the advisory ignore approved, or your compliance regime requires a clean audit with no suppressions. That's disqualifying regardless of how good the code is.
  • You need deliverability infrastructure: bounce/complaint handling, DKIM/SPF, suppression lists, provider failover. That's SES/Postmark/SendGrid plus a real abstraction.
  • You need multi-channel breadth (Twilio, Slack, FCM/APNs), templating with localization/preview, per-user preferences, quiet hours, rate limiting, or compliance records (CAN-SPAM/GDPR consent). Compare against Laravel's native notifications, Novu, Courier, or Knock instead.
  • You're on full Laravel already — redundant.
  • The service is a consolidation candidate within ~2 quarters. Migrating beats adopt-then-migrate.

Diligence flags before it lands in a plan:

  • Scope the advisory. PKSA-zwc5-qtrz-zm1n has no upstream fix, which means the exposure sits in the framework layer, not this package. Have security state the actual attack surface and blast radius in writing — "we suppressed it" is not an assessment.
  • Confirm the version claims with a real install. 1.0.0 asserts Lumen 10/11 and Laravel 10–13 support; the release notes are the maintainer's assertion, and upstream Lumen's 11 story is murky. Verify against the exact versions you run before repeating the support matrix to stakeholders.
  • Check the ignore against your actual lockfile. The exception applies to Laravel/Lumen 10 and 11; confirm which package/version your scanner attributes the advisory to so the ignore is narrowly scoped and doesn't mask unrelated findings.

How to Pitch It (Stakeholders)

For executives (one paragraph): A Lumen service needs to send notifications and has no supported path today. The package that fills that gap shipped 1.0.0 — a stable API targeting PHP 8.1+ on Lumen 10/11 and Laravel 10–13. Two things changed and both are decisions, not details. First, it now requires PHP 8.1, so if the service is on an older runtime we're bundling a runtime upgrade into a notification ticket. Second, running it on Laravel/Lumen 10 or 11 means formally suppressing a security advisory that has no upstream fix — our scanner will flag it until we document an approved exception with an owner and review date. The package itself is small and MIT-licensed; recommendation is unchanged: vendor the source (~one engineer-day) rather than take it as a live dependency, which also collapses the audit question into a code-review question. It is not a platform investment. The strategic question remains whether this service stays on Lumen — if it consolidates onto Laravel within a year, skip this and migrate.

For engineering (the honest read): 1.0.0 is a breaking release: PHP ^8.1, Lumen 10/11, Laravel 10–13. Lumen 5–9 is left on 0.1.0-beta.2 and should be considered unsupported. The substantive new operational item is the PKSA-zwc5-qtrz-zm1n audit ignore needed on 10/11 — wire it into composer.json's audit config narrowly, document it in the README-adjacent runbook, and put a date on it. Because the diff is small, review the source rather than trusting it; confirm the supported-version matrix with an actual install, then plan to own the fork. Do not put production traffic through it without verifying ShouldQueue behavior, retry semantics, and failure handling yourself — a package this thin will not have hardened those. Real effort sits in deliverability, credential rotation, and the audit exception, not the package.

Ask: approve vendoring (not dependency-listing); secure written sign-off for the advisory exception, with an owner and re-review date; confirm the service's PHP and Lumen versions against the 1.0.0 support matrix; and confirm the 12-month framework plan for the service. Defer any multi-channel or preference-center commitments to whichever platform we pick for those.

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.
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core