Weave Code
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

Web Push Laravel Package

minishlink/web-push

PHP library to send Web Push notifications to browser push endpoints (RFC 8030). Handles VAPID and payload encryption, supports batching and reporting, and works with modern PHP (8.2+) via Composer for integrating push into your backend.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Enabling Real-Time Notifications: Integrate push notifications into web apps (e.g., SaaS platforms, e-commerce, or messaging apps) to re-engage users even when browsers are closed. Supports critical updates (e.g., alerts, reminders) or marketing campaigns (e.g., abandoned carts, promotions).
  • Cross-Browser Compatibility: Standardize push notification delivery across Chrome, Firefox, Safari, and Edge via VAPID authentication, reducing fragmentation in user experience.
  • Scalable Backend for Push Services: Replace custom implementations or third-party APIs (e.g., Firebase Cloud Messaging) for cost efficiency or data sovereignty (self-hosted push infrastructure).
  • Roadmap for Progressive Web Apps (PWAs): Accelerate adoption of PWAs by providing a reliable, open-source alternative to proprietary push services, aligning with web standards (RFC 8030).
  • Build vs. Buy: Buy this package to avoid reinventing push notification logic, but build custom logic only if needing highly specialized features (e.g., advanced analytics on push failures).
  • Monetization: Enable subscription-based models (e.g., newsletters, premium alerts) by ensuring reliable delivery of time-sensitive content.

When to Consider This Package

Adopt This Package If:

  • Your app requires server-sent push notifications to browsers (not SMS/email).
  • You need VAPID-compliant authentication for security and cross-browser support.
  • Your team lacks expertise in Web Push protocol (RFC 8030) or cryptographic key management.
  • You’re building a PWA, SaaS platform, or app with offline-first requirements.
  • You want to avoid vendor lock-in (e.g., Firebase) and prefer self-hosted or open-source solutions.
  • Your payloads are <3KB (limit due to encryption constraints).
  • You’re using PHP 8.2+ and can meet the dependency requirements (OpenSSL, cURL, etc.).

Look Elsewhere If:

  • You need push to mobile apps (use Firebase Cloud Messaging or APNs).
  • Your payloads exceed 3KB (consider chunking or alternative protocols like WebSockets).
  • You require advanced analytics on push open rates (integrate with a third-party service like OneSignal).
  • Your stack is non-PHP (e.g., Node.js, Python—use native libraries like web-push for Node).
  • You need high-frequency push (e.g., real-time gaming) where latency is critical (consider WebSockets).
  • Your team lacks PHP/Laravel expertise and prefers a managed service (e.g., AWS SNS, Firebase).

How to Pitch It (Stakeholders)

For Executives:

*"This package lets us send browser push notifications directly from our PHP backend—no third-party dependencies. It’s secure (VAPID-authenticated), scalable, and future-proof (RFC 8030 compliant). For example, we could use it to:

  • Boost engagement by sending alerts to users who abandon carts or miss critical updates.
  • Reduce churn with timely notifications (e.g., ‘Your subscription renews in 3 days’).
  • Cut costs by avoiding Firebase fees for high-volume push traffic. It’s a drop-in solution that works across all modern browsers, with minimal dev overhead. The MIT license means no vendor lock-in."*

Ask: "Should we prioritize this for [X feature] to improve retention/metrics?"


For Engineering:

*"minishlink/web-push is a battle-tested PHP library for sending Web Push notifications via the RFC 8030 standard. Here’s why it’s a strong fit:

  • VAPID Support: Handles authentication securely with public/private keys (no Firebase needed).
  • Laravel-Friendly: Works seamlessly with Laravel’s service containers and queues.
  • Bulk Sending: Optimized for sending 100s–1000s of notifications efficiently (batch processing).
  • Error Handling: Detailed reports on failed deliveries (e.g., expired subscriptions).
  • Payload Flexibility: Supports JSON, text, or binary data (with encryption).

Implementation Notes:

  • Requires PHP 8.2+ and OpenSSL (for VAPID keys).
  • Keys must be generated once and stored securely (e.g., AWS KMS or Laravel’s .env).
  • Payloads are limited to ~3KB (due to encryption).

Alternatives Considered:

  • Firebase Cloud Messaging: Proprietary, higher cost at scale.
  • Custom Node.js solution: Adds complexity for PHP-heavy stacks.

Next Steps:

  1. Generate VAPID keys (one-time setup).
  2. Integrate with our user subscription flow (frontend + backend).
  3. Test with a small user segment before full rollout.

Risk: Minimal—library is actively maintained (last release: May 2026) with 1.8K GitHub stars."*

Ask: "Should we allocate a sprint to prototype this for [X use case]?"

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.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky