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 Data Dumper Laravel Package

dragon-code/laravel-data-dumper

A Laravel package that makes debugging data easier with convenient dumping helpers for inspecting variables and application state. Get clearer, more readable output while developing so you can trace values and diagnose issues faster, with a lightweight integration that fits naturally into Laravel wo...

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. Unchanged. The package remains a thin, single-purpose Laravel extension that hooks the built-in php artisan schema:dump pipeline to also emit INSERT/data payload for a configured allowlist of tables. It sits entirely on the tooling/dev/CI boundary, registers through a service provider with package auto-discovery, and has zero footprint on the request lifecycle, queue workers, or runtime container. It complements rather than replaces Laravel's schema-squashing workflow — it only addresses a known gap (schema squashing drops the seed data that lookup tables depend on).

Integration feasibility. Unchanged at the code level: composer require plus a published config file enumerating tables; effort measured in hours. The real work is policy — classifying tables as reference data (countries, currencies, roles/permissions, tax rates) versus tenant/operational data that must never be captured. Feasibility remains high, and the 1.6.0 release widens the addressable window: Laravel 13 is now explicitly supported, so the package is no longer capped at Laravel 12. The driver caveat still applies — Laravel delegates schema:dump to mysqldump/pg_dump/sqlite3, and this package must interact correctly with --prune, --database, and --path.

Technical risk. Still low blast radius, asymmetric data risk. The failure containment story is unchanged: only an artisan command is touched, so breakage is confined to CI/local workflows — but a successful misconfiguration can commit PII or environment-specific rows into a schema file that lives in Git history permanently. Two risk items moved favorably in 1.6.0:

  • Framework-version drift is materially reduced. Laravel 13 support landed via PR #23, which is direct evidence the maintainer (and/or contributors) tracks Laravel majors rather than letting the package rot. The previous "9–12 assumed" caveat should be restated as Laravel 9–13, verified for 13 as of 1.6.0, with older minors still to be confirmed against the package's own constraint declarations.
  • Single-maintainer risk is slightly softened (an external contributor authored the headline change), but the fundamentals are unchanged: Dragon Code project, ~35 stars, 0 dependents, no ecosystem validation and no downstream bug surface to learn from.

Residual risks unchanged: divergence from Laravel's internal schema:dump command signature across majors, and nondeterministic dump output that makes review/diffing noisy. Note that "added Laravel 13 support" does not by itself prove correct behavior under Laravel 13's dump tooling — it proves the constraint allows installation. Those are different claims and should be validated separately.

The remaining 1.6.0 items (LICENSE year bump, repository banner refresh) are bot-authored housekeeping and carry no assessment weight; read them as a signal of a maintained-but-low-velocity repo rather than active feature development.

Key questions.

  • Which DB drivers are supported (MySQL 8, Postgres 15, SQLite), and is data emitted via native dump tooling or a separate query pass?
  • How does it handle foreign-key ordering, binary/JSON columns, and large tables — is there row-count guarding?
  • Does it compose correctly with --prune and --database, and how is the command registered (command replacement vs. event hook)?
  • Is there any column-level exclusion mechanism to prevent sensitive fields leaking?
  • Is the output byte-stable across runs so the schema file can be diffed in code review?
  • What is the exact Composer constraint in 1.6.0, and does "Laravel 13 support" mean tested-on-13 or merely installable-on-13? Confirm PHP 8.x floor and lowest supported Laravel minor.
  • What is the maintainer's release cadence vs. Laravel majors — was 13 support shipped before, at, or after the 13 release, and is that turnaround repeatable?

Integration Approach

Stack fit. Targets conventional Laravel (PHP 8.1+, Laravel 9–13) with Composer and package auto-discovery. It still slots into an existing schema:dump-based workflow — teams already squashing migrations get an incremental capability rather than a new tool. For teams that don't use schema squashing, this package is not a reason to start; it presupposes the workflow. The Laravel 13 addition mostly matters for teams planning or already on 13: it removes a hard blocker that would otherwise have forced a fork or a hold-back.

Migration path. Non-destructive and reversible: no database migration, no runtime dependency, no data movement. Adopt on a branch, configure a minimal table allowlist, regenerate the schema file, and diff. Fallback remains a small in-house schema:dump override, or splitting the concern into schema:dump plus a dedicated seeder invoked in deploy/CI. That fallback is cheap enough that this should still be treated as an experiment with a defined exit — the 1.6.0 release does not change the exit cost.

Compatibility. Pin the package version explicitly (^1.6) and verify against the exact Laravel minor and DB driver in use. Because the package wraps an internal framework command, treat every Laravel major upgrade as a compatibility re-check and gate it in CI — 1.6.0 lowers the probability of that check failing on Laravel 13, but does not remove the need for the check. Multi-database apps (e.g., a separate reporting connection) should confirm the --database flag is honored.

Sequencing.

  1. Inventory candidate tables; classify reference vs. operational vs. sensitive.
  2. Confirm the 1.6.0 Composer constraints resolve against the target Laravel/PHP versions before branching.
  3. Install in a branch; publish config with a deliberately narrow allowlist.
  4. Generate a dump and restore it into a clean database; run the full test suite against the restored schema.
  5. Verify determinism by generating twice and diffing.
  6. Add a CI check that the committed schema file is current.
  7. Roll out to the team workflow with a one-page runbook entry.
  8. Schedule a review at the next Laravel major upgrade (unchanged — this remains the standing control).

Operational Impact

Maintenance. Minimal ongoing effort — no runtime surface, no production monitoring, no request-throughput dependency, no version drift pressure between deploys. Burden concentrates in two places: tracking Laravel majors, and owning the table allowlist as the schema evolves. 1.6.0 improves the first of those: Laravel 13 support arrived as a small, contained PR, which suggests the upgrade path is a routine bump rather than a rewrite. The single-maintainer risk is real but has not worsened; keep the version pinned and retain a fork-and-patch contingency.

Support. Community-only; no commercial backing, and with 0 dependents there is no informal user community to lean on. An internal owner (platform/DevOps engineer) should be named, and the team should be comfortable reading the package source — it remains small enough to read end-to-end. The 1.6.0 contributor activity is a mild positive signal for responsiveness, not a support guarantee.

Scaling. Cost scales with the row count of allowlisted tables, not with application scale. Keep dumped tables small (low thousands of rows at most); large reference datasets belong in a deploy-time seeder. Watch repository/artifact size growth as the schema file bloats, and CI time for the "schema file is current" check. Neither is a concern at typical lookup-table volumes, and 1.6.0 changes nothing here.

Failure modes.

  • Silent staleness — schema file not regenerated after a reference-table change; new environments boot with outdated lookup data.
  • FK/ordering failures on restore if dependent tables are dumped out of order or constraints are enforced during load.
  • Data leakage — an overly broad allowlist commits PII or secrets into Git history; the most damaging and least reversible failure.
  • Command non-registration — config caching, --database handling, or command-replacement conflicts cause a no-op dump that looks successful.
  • Driver incompatibility — failures specific to Postgres vs. MySQL dump tooling, discovered late if only one driver is tested.
  • Environment-coupled IDs — hard-coded primary keys colliding with application-generated rows in seeded environments.
  • New in 1.6.0 — false confidence from version support. "Laravel 13 supported" is a dependency-resolution claim, not a tested-behavior claim. Teams on Laravel 13 should not skip the step-4 restore-and-test-suite validation; the risk of a partially-working integration is higher on the newest major simply because it has had the least field exposure.

Ramp-up. Low and unchanged. Any Laravel engineer already knows schema:dump; the delta is a config file and a policy decision, roughly 30–60 minutes of onboarding plus a runbook paragraph. The genuine learning curve is organizational, not technical: establishing and enforcing the "reference data goes in the schema file; everything else goes in a seeder" rule, and reviewing allowlist changes with the same rigor as a migration.

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