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 Monocle Laravel Package

exeque/laravel-monocle

Exeque Laravel Monocle is a lightweight inspection and monitoring package for Laravel apps. It gives developers quick visibility into key runtime details, helping you understand behavior, troubleshoot issues, and keep your application healthy with minimal setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

Build vs. buy for local observability. Monocle sits in the "developer-facing tracing" slot that teams otherwise fill by hand-rolling request logging, dumping queries, or stitching together Telescope + Debugbar + Sentry. v0.9.0 is a maintenance/compatibility release, not a feature release — which is the signal a PM should read: the package is being kept current against the ecosystem rather than expanding scope. That supports "buy" (adopt as a dev dependency) over "build an internal tracing tool" for teams without a dedicated platform engineer.

Support-matrix and upgrade-timing decisions. The release explicitly tracks PHP 8.5 and Filament 5.10.2. If your roadmap includes upgrading either — especially a Filament major-ish bump where notification state moved from the session into a notification mailbox — Monocle has already absorbed that change. This de-risks a framework upgrade that would otherwise cost engineering days of debugging silently-broken instrumentation.

Debugging capability on the roadmap, not just the backlog. The lens set now spans validation, cache, logs, views, Livewire, and Filament notifications, with a browser-side opt-in. That maps directly to the recurring "why is this slow / why did this fail / where did this log come from" class of tickets. Adoption is a candidate for a Q-level developer-experience initiative rather than a one-off tooling ticket.

Use cases worth naming in planning:

  • Validation — deprecation noise on every validated request is gone on PHP 8.5; validation lens output becomes reliably readable instead of drowning in SplObjectStorage warnings.
  • Cache — the array-driver false positive is removed, so Cache::memo() warnings become actionable signal. This matters for teams tuning read-heavy endpoints.
  • Logs — warnings and deprecations now carry the raise-site file and line as origin rather than whatever app code was executing. This is the single highest-leverage fix in the release: it converts log entries into direct links to the offending line, which is exactly the "where do I look first" cost we pay per bug.
  • Views / Livewire — component render() methods and layout templates are now named as origins instead of inline: plus a hash, making view-level performance work traceable to a real file.
  • Browser tracing — now gated behind trace.browser.enabled, so the Monocle button is opt-in and the install docs say so. Reduces accidental exposure and payload in environments where nobody intended to enable it.

Adoption and rollout decisions this unblocks: adding it as a require-dev dependency, defining which environments get browser tracing enabled, and pinning a version for the team.

When to Consider This Package

Consider adoption when:

  • The application is Laravel and at least moderately Livewire- or Filament-heavy — the release notes show that's where the sharpest work is going, and where generic tools leave the biggest gap.
  • Your engineers currently debug by adding dd()/Log::info() calls and removing them later, or by reading laravel.log without trusted origin information.
  • You want per-request tracing on developer machines and in CI-style environments without standing up an APM backend, agent, or hosted account.
  • You're planning a PHP 8.5 or Filament 5.10.x upgrade and want one fewer instrumentation surface to validate afterwards.
  • You can treat it as a development/staging dependency with a pinned version and no production expectation.

Look elsewhere when:

  • The requirement is production observability — error tracking, alerting, SLOs, distributed traces across services. That's Sentry/OpenTelemetry/your APM, and possibly Laravel Pulse. Monocle is not the tool for an on-call rotation.
  • You need a vendor SLA, security review, or long-term support commitment. A 0.x package cannot offer that; the version number alone should keep it out of any critical path.
  • Your team has already standardized on Telescope, Debugbar, or Pulse and the marginal value doesn't justify a second overlapping tool plus its config surface and upgrade overhead.
  • Data-retention or compliance constraints make any request-payload capture, log capture, or browser-side tracing difficult to approve — even in non-production, this needs a conversation.
  • The app is not Livewire/Filament-centric and the value proposition collapses to "a nicer log viewer," which the ecosystem already covers.
  • You're mid-freeze on framework upgrades. The release is compatible-forward, but adopting a new tool during a release freeze is avoidable risk.

Risk notes to carry forward: pre-1.0 versioning means minor bumps can change behavior — the Filament notification-mailbox change and the Livewire inline-template naming change both alter what you see, which will invalidate any saved expectations, dashboards, or documentation built on the old output. Pin to 0.9.x, re-read the notes on each bump, and set an explicit checkpoint at 1.0 before widening usage.

How to Pitch It (Stakeholders)

For executives (one paragraph): This is a free, developer-only diagnostics layer for our Laravel application, and the latest release is a compatibility-and-accuracy update rather than a new capability. The practical value is cycle time: when a request is slow or a log line is confusing, engineers get the answer — which query, which cache call, which template, which line raised the warning — without writing throwaway debugging code or waiting on a hosted monitoring trial. It requires no infrastructure, no procurement, and no production footprint, and it is removed by deleting a dev dependency. The main caveat is maturity: it is pre-1.0, so we adopt at a pinned version with development-only scope and revisit at 1.0.

For engineering leads (the substance):

  • Scope it to require-dev and local/staging environments. Do not put it on the production path.
  • The v0.9.0 changes that matter day to day: log entries now attribute to the raising file and line instead of ambient app code; Livewire view origins resolve to actual components and layout names instead of inline: hashes; the array cache driver no longer produces a false "repeated read" warning; and the PHP 8.5 SplObjectStorage deprecation spam from the validation lens is gone. Those four together remove most of the noise that would have made the tool ignorable.
  • Browser tracing is now correctly gated behind trace.browser.enabled — confirm the flag is explicitly off in any shared environment, and update install docs/onboarding accordingly since the default expectations changed.
  • If we're on Filament 5.10.2, notifications sent via ->send() are captured again after the upstream mailbox change; older Filament versions remain supported, so this doesn't force an upgrade.
  • Cost is a per-request instrumentation overhead in the environments where it's on. Measure once on a representative request before enabling it by default for the whole team.

Recommendation: adopt as an evaluated, pinned, dev-only dependency for one quarter on the highest-traffic Livewire/Filament surface, measure diagnostic time on a small set of real tickets, and make the keep/expand/drop call at the 1.0 release.

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle