- Is sulu/form-bundle compatible with Laravel?
- Compatibility is low and 3.0.1 does not change that. The bundle is tightly coupled to Sulu CMS and relies on Symfony dependency injection, routing, Twig templating, FormType, and EventDispatcher, so a Laravel app needs adapters or an API proxy. There is still no headless or API-first mode in 3.0.1.
- How do I install sulu/form-bundle?
- Run composer require sulu/form-bundle and then follow the bundle documentation in Resources/doc/index.md for setup and configuration. The bundle requires Sulu starting from version 2.0, and you should check the require section of composer.json for the current dependency set. This is a Sulu install path, not a native Laravel package install.
- Does SuluFormBundle support Symfony 8 and which PHP version do I need?
- Version 3.0.1 widens the supported Symfony window to include Symfony 8. Symfony 8 requires PHP 8.4 or newer, which affects hybrid Sulu plus Laravel runtimes because Laravel 10 tops out below PHP 8.4. If both run in one process, the bundle can set the PHP floor, so confirm composer.json constraints before planning.
- Can content managers create dynamic forms without code in SuluFormBundle?
- Yes. Content managers create dynamic forms directly in Sulu Admin, such as contact or sweepstake forms, and position fields in a basic grid. They can also configure emails sent to visitors or themselves. The bundle is built on the Symfony Form Component and its theming features, but custom validation and complex business rules still need extensions.
- How are form submission emails configured in sulu/form-bundle?
- The content manager configures the email sent to the visitor or to themselves through Sulu Admin. The bundle uses the Symfony Form Component and theming features for the form experience. In a Laravel proxy or bridge, you must explicitly map mail configuration and templates rather than assuming Laravel mailers apply.
- What database storage does sulu/form-bundle use?
- The bundle uses Doctrine ORM tables named form, form_field, and form_submission, plus PHPCR with Jackalope for content. A Laravel integration therefore needs migration scripts, a data mapper, or a hybrid storage layer. It is not an Eloquent-based package.
- How do I handle CSRF when using SuluFormBundle with Laravel?
- The deprecated DisabledCsrfTokenManager conflicts with Laravel's built-in CSRF protection, so custom middleware is required. Symfony and Laravel also diverge on session and ESI token handling. Plan an explicit CSRF bridge instead of assuming Laravel middleware covers Symfony forms.
- Can I use SuluFormBundle as a headless or API-first form service?
- No. Version 3.0.1 still has no headless or API-first mode, and the bundle remains tightly coupled to Sulu Admin, content management, and workflow. If you need isolation, exposing the bundle as a microservice through an API proxy is still the lowest-risk option.
- What changed in sulu/form-bundle 3.0.1 that affects Laravel integration?
- Service definitions moved from XML to PHP, which makes the DI graph easier to introspect, statically analyze, and review when building a Laravel bridge. Request handling now uses correct accessors instead of $request->get(), so any adapter proxying a Laravel Request into Symfony must map query, request, and attributes explicitly. External redirect links now use the link provider, and the built form cache resets between requests, so add regression coverage for redirect targets and cache lifecycle.
- How should I evaluate maintenance and alternatives for sulu/form-bundle in a Laravel project?
- Treat it as a Sulu-first package: check Sulu 2.0+ compatibility, the Symfony and PHP version window, and whether the 3.0.1 behavioral changes affect your forms before committing. There is no Laravel-native alternative inside this package, so compare Laravel form builders or custom admin modules if you are not already on Sulu. For tight coupling, the API proxy option remains the lowest-risk path.