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

samson/data-grid-bundle

samson/data-grid-bundle is a Symfony bundle for building configurable data grids with sorting, filtering, pagination, and custom columns. It helps present Doctrine entities and other data sources in admin panels, dashboards, and reports.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

  • This is not a Laravel package. It is a Symfony2 bundle (SamsonIT\DataGridBundle), so it integrates through Symfony's Bundle class, DI container, and Twig templating — none of which Laravel's service-provider model consumes. There is no ServiceProvider, no config/data-grid.php, no publishable assets.
  • The rendering layer is AngularJS 1.x, a frontend framework that reached end-of-life on December 31, 2021. A Laravel application's default frontend path (Blade + Vite + Livewire/Inertia) has no natural seam for it.
  • Functionally the bundle is a thin server-side data provider (query/serialize to JSON) plus a client-side grid. Only the JSON contract and query-building conventions are portable; the delivery mechanism is not.

Integration feasibility

  • Composer installation is technically possible but will pull in Symfony 2.x-era constraints (symfony/framework-bundle, symfony/twig-bundle, symfony/http-kernel) that conflict with any modern laravel/framework. Expect the solver to fail; working around it via --ignore-platform-reqs or version aliasing creates an unmaintainable install.
  • A viable (but manual) path: read the bundle source once, reimplement the JSON endpoint as a Laravel Resource/controller, and reimplement the grid as a Blade/Livewire component. That is a rewrite, not an integration.
  • There is no documentation, no README-level usage contract, and 5 GitHub stars with 0 dependents — meaning no reference implementations, no Stack Overflow corpus, and no one to ask.

Technical risk — High

  • Abandonment: last release 2015-03-03, ~10 years stale. No security patches, no PHP 8.x compatibility, no PSR-4/autoload modernization guarantees.
  • Known-vulnerability surface: AngularJS 1.x carries documented XSS and CSP-bypass issues with no upstream remediation; a security review will flag it as a finding.
  • Ecosystem validation: 5 stars and 0 dependents is a strong signal the package was never used in production outside its origin. Opportunity score of 2.43 against a 0.055 overall score suggests low but nonzero "could be rebuilt" value — not "should be adopted."
  • Opportunity cost: time spent making this run is time not spent on Filament, Livewire, Inertia, or a maintained DataTables adapter, all of which are current and supported.

Key questions for the requester

  1. What specific grid behavior do we need — server-side pagination, filtering, sorting, column config, export? (Almost certainly reproducible in a modern stack in days.)
  2. Is there an existing AngularJS surface in our app, or would this introduce AngularJS as a new dependency in 2025?
  3. Are we evaluating this because of an inherited codebase, or as a greenfield selection? (Greenfield = reject immediately.)
  4. Who owns the fork if we adopt? Is there budget for a permanent maintainer-of-last-resort?
  5. Does it satisfy our Composer audit / SCA policy (abandoned package, EOL JS dependency)?

Integration Approach

Stack fit

  • Poor to nonexistent. Laravel's conventions (service providers, Eloquent, Blade, Vite, queues) have no overlap with a Symfony2 bundle's assumptions (DI XML/YAML, Twig, Assetic, Kernel).
  • If the underlying value is "declarative column config → server-side query → JSON," that pattern maps cleanly onto a Livewire table component, Filament Table, or Inertia + Vue/React table, and should be built there.

Migration path (recommended)

  1. Spike (1–2 days): clone the repo, read the grid configuration and JSON serialization logic, document the data contract and any non-obvious query features (e.g., per-column filters, joins, aggregates).
  2. Extract, don't install: port the contract into a Laravel controller/resource plus a typed column definition class. Do not add the Symfony bundle to composer.json.
  3. Replace the view: implement with Livewire/Filament (server-driven, minimal JS) or Inertia + a current Vue/React table library. This also eliminates the AngularJS EOL exposure.
  4. Verify parity against the documented contract with feature tests before deleting any legacy grid code.

Compatibility

  • PHP: bundle targets the PHP 5.x era; modern Laravel requires 8.2+. Expect syntax-level and deprecation-level breakage even if Composer is coerced into installing it.
  • Symfony components: 2.x constraints are irreconcilable with current laravel/framework dependencies (which pull Symfony 6/7 components). This alone makes coexistence fragile.
  • Frontend: AngularJS 1.x has no supported build path through Vite without custom shimming; asset compilation and CSP headers will need bespoke work.

Sequencing

  • Do the build-vs-buy decision first. If the answer is "build on Livewire/Filament," the remaining sequencing is ordinary feature work and the package never enters the dependency graph. This is the lowest-risk ordering and should be the default recommendation.

Operational Impact

Maintenance

  • Effectively zero upstream maintenance. Adopting this means owning a permanent fork: PHP upgrades, security patches, and AngularJS CVE triage all become our responsibility. MIT license permits forking, but does not supply a maintainer.
  • Composer will mark it abandoned and our SCA tooling will surface it on every audit — a recurring tax on release hygiene.

Support

  • No maintainer activity since 2015, no issue triage, no dependents to consult, no documentation. Internal onboarding material would have to be written from source reading.
  • Vendor/support escalation path: none.

Scaling

  • Client-side AngularJS grid: the digest cycle degrades with row count and watcher density; large result sets require strict server-side pagination, which pushes work back to the API layer anyway.
  • No evidence of queue integration, caching hooks, or streaming — large exports or complex aggregate grids will need custom work regardless of the package.

Failure modes

  • Composer conflict at install time blocking unrelated dependency upgrades (highest-probability failure, occurs on day one).
  • Silent breakage on PHP minor upgrades — unmaintained code fails without a clear error trail.
  • Security finding from AngularJS EOL and known XSS vectors, potentially blocking a release or compliance gate.
  • Asset pipeline breakage when Vite config or CSP headers change.
  • Bus-factor of one: any engineer who reverse-engineers the bundle becomes a single point of knowledge.

Ramp-up

  • High cost relative to delivered value: requires Symfony2 bundle conventions and AngularJS 1.x literacy, both of which are shrinking skill pools and difficult to hire for.
  • Realistic ramp-up for a mid-level Laravel engineer: 1–2 weeks just to become productive in the codebase — versus roughly the same time to build the equivalent grid natively in Filament or Livewire, with a current, supported, hireable stack.

TPM recommendation: Do not adopt. Treat this as a reference implementation to be mined for its data contract, then deliver the capability natively in Laravel. The package's only durable asset is its column-definition/JSON pattern; everything around it — framework, frontend, and maintenance posture — is a liability in a 2025 Laravel estate.

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.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
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