- Can I use simplethings/form-extra-bundle in a Laravel application?
- No. It is a Symfony 2 bundle that ships a Bundle class, a DI extension, and Twig form themes wired into Symfony's Form component, none of which Laravel registers. Composer may resolve the package, but no service provider exists and none of its form types will be usable without Symfony's FormFactory. Treat it as reference material rather than a dependency.
- Is simplethings/form-extra-bundle still maintained?
- No. The last release was June 2014 and the package is explicitly marked deprecated, with no security or compatibility maintenance for roughly a decade. It has around 99 stars and zero dependents, so there is no community validation or fork ecosystem to rely on. There is no realistic path to running it on a current PHP or Symfony stack.
- What happens if I try to install it on PHP 8 or a current Laravel version?
- Composer may still resolve and download it, which makes the failure deceptive. Once autoloading touches its classes you hit removed Symfony 2 APIs such as the old AbstractType::setDefaultOptions and getName lifecycle, and the PHP 5-era code lacks the types and signatures modern runtimes expect. If you experiment at all, time-box it as a spike rather than a delivery task.
- What form types and widgets does the bundle actually provide?
- Its useful surface is a set of additional AbstractType implementations, typically enhanced Chosen or Select2 style selects, reCAPTCHA fields, autocomplete and AJAX-backed entity pickers, plus read-only and help-text types. It also ships Twig form themes for rendering those widgets. Each of those pieces now has a maintained Laravel-native equivalent.
- What are the Laravel alternatives to its enhanced select widgets?
- Use Tom Select or Select2 installed via npm and wrapped in a reusable Blade component with a thin PHP options object. For dependent or dynamically loaded fields, reach for Livewire or Alpine instead of a server-side form type. Captcha needs a maintained Laravel captcha package rather than the bundle's reCAPTCHA form type.
- How do I implement AJAX entity autocomplete in Laravel without this bundle?
- Expose a small JSON search endpoint and drive the input with Livewire's wire:model.live or an Alpine component, then wrap it in a Blade component that accepts your model and search callback. Keep the ergonomics the bundle offered by putting the options in a lightweight PHP object. This is a short build task, not a port of the bundle's code.
- Which Symfony and PHP versions does the bundle target?
- It targets the PHP 5.3 and 5.4 era and Symfony 2.x APIs, including deprecated Twig form theme syntax. Those APIs were removed in PHP 7.2+ and PHP 8.x and in every Symfony release since 3.0. Assume zero compatibility with anything you are running today.
- Is it a security or supply-chain risk if I ship it?
- Yes, in three ways: it is abandoned with no patches since 2014, its runtime targets long-removed PHP and Symfony APIs, and it has essentially no downstream users to surface bugs. In practice the risk is not that it breaks quietly but that it will not load at all. Either way it should not reach production.
- Can I port the bundle's code into Laravel Blade components?
- Porting is a rewrite, not an integration, and effort is low-to-moderate per widget. The recommended path is substitution: inventory the widgets you want and map each to a maintained Laravel-side option such as npm-packaged Tom Select, Livewire or Alpine for AJAX fields, and a maintained captcha package. Only reimplement a widget from the bundle's implementation when no modern equivalent exists, and treat that code as a specification.
- What license does the bundle use, and can I reuse its code?
- Check the LICENSE file in the repository before copying anything, since the assessment only notes that attribution is required per its license terms. If those terms permit it, reading the implementation as design inspiration or as a behaviour spec is reasonable. The PHP 5-era code itself will still need a full rewrite for any current stack.