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

Laravel Facebook Pixel Laravel Package

combindma/laravel-facebook-pixel

Easily integrate Facebook Pixel into your Laravel app. Track page views and custom events from PHP or Blade, fire standard events, and manage configuration with a lightweight, developer-friendly API for adding Meta Pixel tracking to any Laravel project.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: This package is a thin Laravel integration layer over facebook/php-business-sdk (Meta Marketing API). It supplies the service provider, config, facade, and OAuth/token plumbing; the substantive API surface — ad accounts, campaigns, insights, custom audiences, webhooks — is owned upstream by Meta. That means the wrapper inherits the parent SDK's release cadence, deprecation policy, and Graph API versioning. Release 5.3.6 does nothing architecturally new: it changes only the composer.json constraint from a broad ~25.0 (or similar) range to an explicit window of ~25.0.0,<25.0.2, i.e. it now permits only 25.0.0 and 25.0.1. The package's value proposition is unchanged, but its dependency surface has been deliberately narrowed — a signal worth reading carefully.

Integration feasibility: Installation is straightforward for any Laravel 9/10/11 app already on the 25.x line: composer require, publish config, add credentials (app ID/secret, access token, ad account ID), and schedule token refresh. The constraint change is transparent to consumers who are already resolved to 25.0.0 or 25.0.1. For anyone pinned to 25.0.2+ — including via a transitive requirement from another Meta-adjacent package — Composer will refuse to resolve, and the fix is a downgrade of the SDK or a fork of this package's constraint. Expect composer update to surface this as a hard failure rather than a warning.

Technical risk: Medium, concentrated in three places. (1) Regression avoidance vs. patch starvation: pinning below 25.0.2 strongly implies a defect in 25.0.2/25.0.3 that breaks this wrapper. That is a responsible short-term guardrail but leaves the app frozen on 25.0.1 until the maintainer publishes an inverted constraint. (2) Security exposure: if 25.0.2 or a later patch addresses a CVE or a Graph API breaking change, consumers cannot adopt it without abandoning this package version. This must be tracked, not assumed benign. (3) Churn: narrow, rapidly-moving pins (<25.0.2) are a maintenance smell — two consecutive patch releases (5.3.6, 5.3.7) of constraint fiddling indicates the wrapper is chasing upstream instability rather than controlling it.

Key questions for the maintainer:

  • What specific behavior in php-business-sdk 25.0.2 triggered the upper bound — runtime error, API contract change, or auth/HTTP client regression? Is there an upstream issue or PR we can subscribe to?
  • Is the intent to restore a broader range once 25.0.3+ ships, and what is the expected timeline? Is there a tracking issue?
  • Does 25.0.2 contain any security-relevant fixes we would forgo by pinning below it?
  • Is ~25.0.0,<25.0.2 intentional (AND-ed constraint yielding 25.0.0–25.0.1 only) or a typo for ~25.0.0 <25.0.2-style intent with a wider floor? The overlap should be confirmed explicitly.
  • Which Graph API versions does the wrapper officially support, and are we at risk if our app's pinned Graph version ages past Meta's two-year deprecation window while we're stuck on 25.0.1?

Integration Approach

Stack fit: Suitable for Laravel apps running PHP 8.1+ with Composer 2 and a standard CI pipeline (GitHub Actions/GitLab) that runs composer validate --strict and composer check-platform-reqs. No new infrastructure, queue driver, or cache dependency is introduced by this release. The constraint is enforced entirely at dependency-resolution time, which means it fits cleanly into existing tooling — but only if that tooling actually runs a cold composer update rather than reusing a warm cache.

Migration path: Effectively a lockfile migration. Upgrade path: pin composer.json to ^5.3.6, run composer update --with-dependencies facebook/php-business-sdk, and confirm the resolved SDK version is 25.0.0 or 25.0.1. On a green composer.lock diff showing only the wrapper bump and no SDK downgrade, ship it behind normal feature-flag discipline. If the resolver reports a conflict — likely when another internal package or a Meta CRM/messaging library requires ≥25.0.2 — escalate before forcing --ignore-platform-reqs or a fork; those workarounds convert a clean dependency problem into an unbounded runtime risk.

Compatibility: Two dimensions. Upstream: only 25.0.0 and 25.0.1 are sanctioned; 25.0.2+ is explicitly excluded, and pre-25.0.0 is also excluded by the tilde floor. Downstream: any Laravel app, package, or monorepo module requiring a newer SDK patch is now mutually exclusive with this release. Audit the full dependency graph (composer why facebook/php-business-sdk, plus a scan of composer.lock across all first-party repos) before adopting. Also verify no code in our application depends on a method or parameter that landed in 25.0.2 — unlikely for a single patch, but cheap to grep for.

Sequencing:

  1. Dependency-graph audit: confirm no first-party or vendor package requires SDK ≥25.0.2. Gate: zero conflicts. Owner: platform/back-end lead. Effort: ~0.5 day.
  2. Maintainer clarification: open the issue requesting the 25.0.2 root cause and a tracking link for restoring the range. Gate: written answer or a documented fallback plan. Effort: ~1 hour.
  3. Staging rollout on a non-production ad account with token-refresh enabled; exercise campaign read, insights pull, and one write path. Gate: parity with current behavior. Effort: ~1 day.
  4. Production rollout to a single low-traffic tenant, then fleet-wide after a 72-hour clean window.
  5. Establish a standing review: reassess this package on every 25.0.x upstream release until the constraint widens; do not let the pin silently persist past one quarter.

Operational Impact

Maintenance: Low ongoing code maintenance — no application changes are implied — but elevated dependency-hygiene overhead. We are now dependent on a maintainer who is actively micromanaging an upstream version window, which historically correlates with more frequent patch releases and more surprise lockfile churn. Budget a recurring ticket to review this package's constraint on each upstream SDK release, and assign a named owner rather than relying on "whoever hits the Composer error." Recommend a Renovate/Dependabot rule that surfaces this package's releases to the platform channel instead of auto-merging.

Support: Support surface splits cleanly. Application-level issues (config, facades, token storage) remain ours. SDK-level issues — API errors, Graph version rejections, HTTP client behavior — route upstream to Meta, and with the pin we cannot absorb Meta's own fixes without a maintainer release. That makes the maintainer a single point of failure for upstream remediation. Identify a fallback: we can fork the wrapper and relax the constraint in one line if the maintainer goes quiet, so keep the package un-forked only by preference, not necessity.

Scaling: No scaling impact. This release adds no runtime code, no HTTP calls, no caching or queue behavior. Throughput, rate-limit handling, and batch insights performance are entirely inherited from the parent SDK and unchanged between 25.0.0, 25.0.1, and the excluded 25.0.2.

Failure modes:

  • Silent staleness (most likely, lowest severity): the pin lingers for months; we drift behind upstream patches and eventually behind Meta's Graph API deprecation schedule, then face a forced multi-version jump. Mitigation: calendar-driven quarterly review with an explicit deadline.
  • Resolver deadlock (moderate): a new dependency or internal package requires SDK ≥25.0.2; composer update fails in CI and blocks unrelated work. Mitigation: audit before adoption; keep the fork-relax option pre-scoped so the recovery is hours not days.
  • Security gap (low probability, highest severity): a CVE lands in the 25.0.2+ range that we cannot take. Mitigation: subscribe to php-business-sdk security advisories and to GitHub's Dependabot alerts for the transitive dependency; define now that a qualifying advisory triggers immediate fork-and-relax rather than waiting on the maintainer.
  • Misread constraint (moderate, cheap to prevent): a team member assumes ~25.0.0,<25.0.2 is a typo and "fixes" it locally. Mitigation: document the pin with a code comment and a link to the maintainer issue.

Ramp-up: Minimal. Any engineer already fluent in Laravel service providers and Composer constraint semantics can operate this package; the only new knowledge required is the overlap semantics of AND-ed Composer ranges and the reason for the upper bound. Allocate roughly half a day of platform-engineer time for the audit, staging validation, and a short written record in the dependency-decision log so the pin's rationale survives staff turnover. Overall recommendation: adopt 5.3.6 on the current 25.0.1 resolution, contingent on a clean dependency-graph audit and a maintainer answer on the 25.0.2 root cause; treat the constraint as a temporary guardrail with an expiry, not a permanent state.

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.
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
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console