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

Data Grid Bundle Laravel Package

vysokeskoly/data-grid-bundle

A PHP data grid bundle for building configurable, sortable, and filterable tables with pagination, reusable column definitions, and clean integration into your application's listings and admin views.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — first, a framing correction. Despite the brief describing this as a "Laravel/PHP package," vysokeskoly/data-grid-bundle is a Symfony bundle (a fork of the long-dormant Kitpages DataGridBundle). It is built on Symfony's DI container, EventDispatcher, Form component, and Twig. It has no Laravel service provider, no facade, no config/*.php publishable config, and it does not target Illuminate contracts. In a Laravel codebase it is not integrable without a bespoke bridge; in a Symfony codebase it is a drop-in only if the Symfony major version matches.

Integration feasibility — low. The package is a thin, unmaintained fork: 0 stars, 0 dependents, last release April 2022. Its value proposition is server-side grid rendering (Doctrine ORM/ODM/array sources, pagination, column definitions, filter forms, Twig output). That's a solved problem in both ecosystems via maintained alternatives, so adopting an abandoned bundle buys nothing and costs ownership.

Technical risk — high, concentrated in four areas:

  • Abandonment. No upstream triage, no security response, no PHP/Symfony version bumps. Any CVE in a transitive dependency becomes our incident.
  • Constraint lock. A 2022 release typically pins Symfony 4.4/5.x, Doctrine 2.x, Twig 2/3, PHP ≤8.0/8.1. Verify composer.json before anything else — this usually blocks modern Symfony 6/7 outright.
  • Hidden coupling. Grids bind to entity metadata and column resolvers; that logic is portable but not reusable, so replacing the bundle later means rewriting grid definitions rather than swapping a dependency.
  • Zero signal. 0 dependents means no field evidence of production use, no issue corpus to search when something breaks at 2am.

Key questions for the requester:

  1. Is the target stack actually Laravel or Symfony? (If Laravel, this package is a non-starter and the evaluation ends here.)
  2. Which Symfony/PHP/Doctrine versions are in composer.json, and does the app run any of them?
  3. What is the real requirement — server-side paginated tables, or user-configurable filtering/sorting/export? The latter is where homegrown grids quietly balloon.
  4. Would we accept ownership of a fork (patch, tag, internal registry) as a deliberate decision, or is this an accidental dependency?
  5. Is there an existing grid implementation in the app already, and what does it cost to extend versus replace?

Integration Approach

Stack fit. Pass/fail gate first: if the product is Laravel, do not integrate — the correct move is a native option (Filament tables, Livewire + a query-builder table, or a JS grid such as AG Grid/Tabulator over an API). If the product is Symfony 4.4/5.x on PHP ≤8.1 with Doctrine 2, the bundle can technically be registered via bundles.php and configured under config/packages/, but it still fails the maintenance test below.

Migration path. Two scenarios:

  • Greenfield: do not adopt. Choose a maintained grid abstraction and accept writing ~1–2 days of column/filter definitions yourself.
  • Already dependent: treat the bundle as vendored code. Fork to an internal Git namespace, pin the tag, and scope a replacement behind the same grid-definition interface so column configs survive the swap. Budget the replacement as planned technical debt, not a backlog item.

Compatibility. Confirm before estimating: PHP constraint, Symfony major, Doctrine ORM/ODM major, Twig major, and whether symfony/form filter integration still matches the app's form theme. Expect to need composer why-not checks against every other pinned package; a 2022 bundle usually conflicts with anything modern.

Sequencing.

  1. Day 0 — stack confirmation and composer require --dry-run. This single step either kills the initiative or produces a real constraint list.
  2. Spike (1–2 days) — one grid with pagination, one filtered column, one custom column type, rendered in the app's actual layout. Measure the Twig render path with realistic row counts.
  3. Decision gate — if the spike requires patching the vendor code, escalate to "fork or replace," not "integrate."
  4. Only then wire into the app behind an internal interface that hides the bundle's API.

Operational Impact

Maintenance. We become the maintainers on day one. Realistic recurring cost: a few hours per quarter for dependency bumps, plus an unplanned block whenever a PHP or Symfony upgrade lands. Add a standing exception to the dependency-upgrade runbook naming this package as a known blocker.

Support. There is no support channel with a response expectation. Escalation is "read the source." That's acceptable for a utility we could rewrite in a week; it is not acceptable for anything on a revenue path. Internal documentation of the grid API and its quirks is mandatory, not optional.

Scaling. The bundle's server-side pagination model is sound for large tables, but the risks are in our code, not theirs: N+1 queries from column resolvers touching lazy relations, deep OFFSET scans on large tables, and filter forms generating unindexed LIKE clauses. Load-test at production row counts with query logging on; treat any per-row resolver doing I/O as a defect.

Failure modes. Ranked by likelihood: (1) dependency conflict blocks a framework upgrade — near-certain within 12–18 months; (2) PHP deprecation warnings escalating to errors on a minor bump; (3) silent behavior change in a Doctrine or Twig upgrade breaking rendering with no upstream fix; (4) a transitive CVE with no patched release, forcing an emergency fork. Mitigation for all four is identical and cheap: pin exactly, vendor the source, and keep the grid definitions behind our own interface.

Ramp-up. A mid-level developer needs roughly 1–2 days to be productive with the bundle's column/field/grid-event model, assuming they already know Symfony and Twig. The tax is the undocumented edges — the source is the only reliable reference, and there is no issue history to search. Onboarding cost is low in absolute terms but permanent: every new hire re-learns an orphaned API that no public tutorial or LLM has seen much of.

Verdict. Score 0 with 0 dependents and a 2022 last release is an accurate signal. Recommend do not adopt; if already present, contain it behind an interface and schedule replacement. The only defensible case is a Symfony 4.4/5.x application where a working grid already exists and the alternative is a larger rewrite — and even then, fork it deliberately rather than depending on it.

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.
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
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk