wandi/easyadmin-plus-bundle
Wandi EasyAdmin Plus Bundle enhances Symfony EasyAdmin with extra fields, filters, actions, and admin helpers, making it faster to build polished backends. It integrates into existing dashboards and reduces boilerplate for common CRUD and configuration tasks.
Framing correction (material to any decision): despite the brief labeling this a "Laravel/PHP package," wandi/easyadmin-plus-bundle is a Symfony bundle — specifically a thin wrapper over EasyCorp/EasyAdminBundle. There is no Laravel integration path, no service provider, no config/ publishable assets in the Laravel idiom. Any evaluation must therefore be scoped as a Symfony decision, and if the target application is genuinely Laravel, the assessment terminates at "not applicable."
Architecture fit. The package sits in the Symfony bundle layer: a Bundle subclass registered in Kernel::registerBundles(), adding conventions and helpers on top of EasyAdmin's admin-generation model. Its value is additive sugar — the kind of thing that saves a sprint on a greenfield Symfony 4 admin panel and costs nothing to remove later if written cleanly. That is a convenience-tier dependency, not a platform-tier one, which is the single most important architectural fact: it is replaceable by definition, because everything it does is expressible in EasyAdmin's own configuration.
Integration feasibility. Constrained by three hard gates that all fail today:
| Gate | Requirement (inferred from 2019 release) | Current state |
|---|---|---|
| Symfony | 4.x | 5.4/6.4/7.x are the supported lines; 4.4 is EOL |
| EasyAdmin | 2.x | 4.x is current; the 2→3 rewrite removed the API surface this wraps |
| PHP | 7.1–7.4 | 8.2/8.3 is the operative baseline |
Composer will refuse resolution on a modern skeleton, and forcing it via --ignore-platform-reqs leaves you running an EOL framework branch with an unmaintained wrapper on top. That is not a technical risk; it is a technical certainty of future incident.
Technical risk: high, concentrated in staleness rather than in code quality. 38 stars and zero dependents means no downstream canary — nobody else is exercising this against new Symfony releases, so breakage surfaces only in your CI. Last release August 2019 plus zero dependents is the classic signature of a package abandoned between a vendor's internal sprint and its open-source release. MIT license is the one unambiguously positive signal: forking is legally clean, and a fork is the realistic end state of any adoption.
Key questions for the sponsor:
Stack fit. Zero for Laravel. Marginal for Symfony 4; negative for Symfony 5+. This is the rare dependency where the correct integration approach on a modern stack is reimplementation, not integration.
Compatibility. Assume PHP 7.x, Symfony 4.2–4.4, EasyAdmin 2.x. Do not attempt to install against Symfony 6/7 or EasyAdmin 4 — the configuration tree and admin-controller extension points were rewritten between majors, so the wrapper's assumptions are structurally invalid rather than merely deprecated.
Migration path. Treat the repository as a reference implementation, not a dependency. Because MIT permits it, the highest-value move is to read the source, extract the two or three behaviors that motivated the evaluation, and express them as native EasyAdmin 4 configuration or a small in-house bundle. That is typically a few days of work against a codebase of this size, and it converts an unowned third-party risk into owned, tested, upgrade-tracked code.
Sequencing if adoption is nonetheless mandated:
src/ or a private VCS repo. Never depend on the Packagist artifact. Freeze the version explicitly.If the application is Laravel: sequence nothing. Document the rejection and route the underlying admin-panel need to a Laravel-native option (Nova, Filament, or a hand-rolled Blade/Livewire surface).
Maintenance. The upstream maintenance burden transfers entirely to the adopting team from day one. Expect zero upstream responses to issues, no security patching, and no PHP 8.3+ or Symfony 7 compatibility work. Budget the fork's maintenance as a standing line item — realistically a few hours per framework minor release, plus the cost of the eventual port. Compare that against the days required to reimplement the needed behaviors natively: the reimplementation almost always wins on total cost of ownership at this package size.
Support. Community-only, and there is essentially no community: 38 stars, zero dependents, no downstream users to consult. Internal expertise must be built, not borrowed. The realistic support model is "the engineer who reads the source owns it," which is a single-point-of-failure staffing pattern a TPM should flag explicitly.
Scaling. Low concern. This is admin-UI surface — low request volume, no hot path, no data-plane involvement. The scaling risk is organizational, not infrastructural: the bundle's constraints will block framework upgrades that do carry performance and security value, and that indirect tax is where the real cost sits.
Failure modes, ranked by likelihood:
Ramp-up. Low technical difficulty, moderate organizational difficulty. The codebase is small enough to read end-to-end in an afternoon by anyone fluent in Symfony bundles and EasyAdmin conventions. The binding constraint is not learning the package; it is finding someone current on EasyAdmin 2.x, which is two major versions behind the documentation everyone actually has open. Expect the ramp-up to be spent reconstructing obsolete API context rather than understanding novel logic.
Recommendation. Reject as a dependency on any modern stack; harvest as an MIT-licensed reference. The opportunity score of ~1.24 is consistent with that verdict — this is a 2019 vendor sprint artifact, not a maintained component, and the correct TPM action is to price the reimplementation and close the question rather than to sequence an integration that has no viable target.
How can I help you explore Laravel packages today?