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 Mysql Explain Laravel Package

tpetry/laravel-mysql-explain

Adds EXPLAIN support to Laravel's MySQL query builder so you can inspect execution plans, spot missing indexes, and debug slow queries without leaving your app. Works with Eloquent and the query builder, with no extra tooling required.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Performance roadmap prioritization. Turns "the app feels slow" into concrete, ranked evidence — which queries do full table scans, which indexes go unused, where joins explode. That data lets you decide whether the next sprint is feature work or query/index remediation.
  • Build vs. buy vs. adopt (tooling). This is a ~$0 "adopt" option against two alternatives: building an internal EXPLAIN viewer (weeks of engineering for a solved problem) or buying APM/DB-observability seats (Datadog, New Relic, Percona PMM — meaningful per-host cost). For teams without a DBA or APM budget, this is the cheap first step.
  • Release-readiness and scale gating. Before a launch, migration, or traffic event, use it to review query plans for the hot paths and to catch regressions from new indexes, schema changes, or ORM changes. Supports a "no unindexed scans on critical endpoints" gate.
  • Migration and refactor risk. Confirms a schema change or eager-loading fix actually changed the plan, rather than trusting that it did. Useful evidence in code review for any PR touching Eloquent relationships, where clauses, or indexes.
  • Engineering onboarding and self-service. Gives developers a readable answer to "why is this endpoint slow?" inside their existing Laravel workflow, reducing escalations to a DBA or platform team.
  • Use cases to prioritize: slow-endpoint triage, N+1 and missing-index investigation, load-test analysis, pre-launch performance audits, and postmortem evidence for latency incidents.

When to Consider This Package

Adopt when:

  • The application is on MySQL or MariaDB and uses Laravel's query builder/Eloquent. (Postgres shops need a different visualizer.)
  • You have no dedicated DBA, no APM/DB-observability contract, or the existing APM doesn't surface query plans to application engineers.
  • Performance work is reactive and ad hoc today, and you want a low-friction way to make query plans part of normal development and code review.
  • You want a dev/staging-only, MIT-licensed, composer-installable tool with near-zero operational footprint and no lock-in — removing it is a one-line change.
  • The team is small enough that a single-maintainer package is acceptable risk for a development aid (it cannot break production if scoped to non-prod).

Look elsewhere when:

  • You need continuous production monitoring, alerting, or tracing — this is a diagnostic instrument, not an observability platform. Pair it with (or replace it by) real APM.
  • Your database is not MySQL (Postgres, SQL Server), or you need plan analysis for multiple engines.
  • You require vendor support, SLAs, or security review of a maintained dependency — 268 stars and a single maintainer is a governance signal; budget time to fork or vet.
  • Your workload issues are not query-plan-shaped (connection pooling, cache hit rates, lock contention, replication lag) — different tooling.
  • MySQL version is old enough that EXPLAIN ANALYZE isn't available; you'll get estimates only, which weakens the "this is what actually happened" value.
  • Engineers are unlikely to run it — a tool nobody opens is worse than no tool.

How to Pitch It (Stakeholders)

To executives: This is a free, MIT-licensed developer tool that makes database query plans readable to any engineer on the team. It directly attacks the most common cause of slow Laravel applications — inefficient or unindexed queries — without buying per-seat APM licenses or hiring a DBA. The decision it enables is simple: spend the next sprint on a known, measurable performance fix instead of guessing. Cost is negligible, it's scoped to non-production, and it's removable in one commit, so downside is minimal.

To engineering leadership: It answers "is this query actually the problem, and did my fix actually work?" inside the normal Laravel workflow — no new infrastructure, no dashboard to maintain, no new service to operate. It turns performance into something reviewable in a pull request rather than tribal knowledge, and it shortens the path from a slow endpoint to a concrete index or query change. Treat it as a diagnostic aid for staging and local work, complementary to — not a substitute for — production APM.

To engineering: One composer dependency, developer-only. Use it to inspect the plans behind slow endpoints, N+1s, and suspicious where clauses, and to show before/after evidence in PRs that touch queries or indexes. Caveats to state up front: single-maintainer project with modest adoption, so pin the version and be prepared to fork if it goes stale; it is not a monitoring tool and should not run in production; and it only covers MySQL/MariaDB, so Postgres services need an equivalent.

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.
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel