- Is jordillonch/crud-generator a Laravel package?
- No. Despite some package summaries describing it as Laravel tooling, the repository is CrudGeneratorBundle, a Symfony2 bundle that registers through AppKernel::registerBundles() and depends on Doctrine, Twig, and KnpPaginator. It has no Laravel service provider, no Artisan commands, and no Blade views, so it cannot be installed into a Laravel application.
- Can I install jordillonch/crud-generator in a Laravel app with composer require?
- Composer will refuse to resolve it. The package requires symfony/symfony 2.x components, DoctrineBundle, TwigBundle, FrameworkExtraBundle, and PHP 5.x through 7.0, which conflict with Laravel 10/11 and its php ^8.1 constraint. That resolution failure is actually the benign outcome, because it prevents a half-ported bundle from appearing to work.
- Does it support Laravel 10 or Laravel 11 and PHP 8?
- No. Laravel 10 and 11 run on PHP 8.1+ with Symfony 6/7 components, while this bundle targets Symfony 2.x and PHP 5.x–7.0. The dependency graphs are mutually exclusive, and Laravel consumes discrete Symfony components rather than full-stack bundles. There is no supported path to run it under a modern Laravel runtime.
- What does the CRUD generator actually scaffold?
- It generates Symfony CRUD screens from existing Doctrine entities: a paginated list, column filters, translatable labels, form scaffolding, and detail/edit views rendered with Twig and Bootstrap 2.2.2. It does not generate Eloquent models, Blade templates, FormRequests, or routes/web.php entries. What transfers to Laravel is the information architecture, not the code.
- What are the best Laravel alternatives for CRUD scaffolding and admin panels?
- Filament, Laravel Nova, Backpack, infyom/laravel-generator, and Blueprint all provide maintained, Laravel-native CRUD scaffolding. They support current Laravel and PHP versions and integrate with Eloquent, policies, and Blade out of the box. This package offers no differentiated capability for Laravel CRUD work, so there is no build-vs-buy case.
- Is it safe to use in production?
- Technical risk is high. Symfony 2.x reached end of life in November 2018 with no security patching since, Bootstrap 2.2.2 fails modern accessibility and responsive expectations, and the code targets PHP 5.x–7.0. Generated filter logic from this era commonly concatenates user input into WHERE clauses, creating SQL injection exposure. It also has a single maintainer, no visible CI or test suite, and zero downstream dependents.
- Can I customize the generated templates to match my project conventions?
- Yes, the bundle ships customizable templates, but they are Twig templates and Symfony Form types, not Blade or Laravel components. Any customization stays inside the bundle's Symfony 2.x semantics and Doctrine assumptions. For a Laravel project you would rewrite the templates entirely rather than adapt them.
- How would I migrate or port this package to Laravel?
- Every layer must be swapped rather than adapted: Doctrine to Eloquent, Twig to Blade, Symfony Form to FormRequest plus Blade components, KnpPaginator to LengthAwarePaginator, XLIFF to lang/*.php files, Bootstrap 2.2.2 to Bootstrap 5 or Tailwind, and annotation routes to routes/web.php. Only the screen layout and filter behavior survive as reference. The practical approach is to read the generator templates and controller logic once, then build with a Laravel-native generator.
- Is the package still maintained, and who owns patches if we adopt it?
- It is effectively unmaintained: a single maintainer, no visible CI or test suite, and zero downstream dependents meaning no community compatibility validation. There is no upstream triage, so the moment you adopt it you own every defect and patch yourself. Combined with Symfony 2.x being end of life, no security fixes should be expected.
- Can I still use it on a legacy Symfony 2.8 project?
- That is the only defensible scenario, and even then it compounds risk rather than reducing it. Adding an 83-star, zero-dependent generator to an unsupported stack increases your maintenance surface, especially since Bootstrap 2.2.2 and PHP 5.x–7.0 output will not meet modern expectations. Also confirm whether the generator runs at dev time or request time, because request-time generation is a production incident waiting to happen.