marcin-jozwikowski/easy-admin-pretty-urls
A Laravel package that gives Easy Admin resource pages clean, customizable pretty URLs instead of query-string routes. Improve readability, SEO, and link sharing with simple configuration and seamless integration into existing admin panels.
Check whether you need this package at all. If you're on EasyAdmin >= 4.14, stop — native Pretty URLs are built in and this package is now obsolete. If you're on an older EasyAdmin, this is the bridge package you'd install, but understand you're adopting an unmaintained dependency.
Minimal steps:
composer require marcin-jozwikowski/easy-admin-pretty-urls — this will pull EasyAdmin pinned below 4.14 (v2.9.3 adds an upper bound in composer.json). If you're already on 4.14+, Composer will fail to resolve; that's the package intentionally stepping aside.README.md in the repo (marcin-jozwikowski/easy-admin-pretty-urls) for the config key names and the entity-level slug setup — there is no Laravel-style config file; configuration is done in your EasyAdmin dashboard/entity code.ProductCrudController (or similar) where you want /admin/products/red-sneakers instead of /admin/products/42.// Typical shape (verify exact option names against the README)
yield MenuItem::linkToCrud('Products', 'fa fa-box', Product::class);
// ...and set the slug/source field on the CRUD or entity as documented.
Treat this as a transition shim, not a foundation. The only workflows worth documenting are ones you can delete in a single PR.
< 4.14 version you run today and treat that pin as a project-level decision. Add "easycorp/easyadmin-bundle": "4.13.*" explicitly in composer.json so a composer update doesn't produce a confusing conflict error from the transitive constraint.prePersist/preUpdate or Doctrine lifecycle callbacks so that when you uninstall the package, slugs in the database are already correct and unchanged. This is the single most important integration tip: the data should outlive the package.composer.json as an internal fork or add a replace/inline comment in your team docs so the next developer doesn't assume it's an actively maintained vendor dependency.v2.9.3 explicitly caps EasyAdmin before 4.14. composer require easycorp/easyadmin-bundle:^4.14 and this package cannot coexist. If a composer update suddenly reports an unrelated-looking conflict, this constraint is the culprit.UPGRADING.md or a tracking issue so the knowledge isn't lost.bin/console cache:clear (Symfony) / php artisan route:clear and route:cache in your host app; stale cached admin routes are the usual cause of "my change did nothing."path repository or a fork) rather than depending on the abandoned upstream. A private fork is cheaper than a surprise breakage on a PHP upgrade.How can I help you explore Laravel packages today?