- Does ibexa/design-engine work with Laravel?
- No. Ibexa Design Engine is a Symfony bundle built for the Ibexa DXP kernel and has no Laravel adapter, facade, or service provider. Its template and asset fallback resolution depends on Ibexa's design and siteaccess configuration, so it cannot be dropped into a Laravel application. If you are evaluating this package for Laravel, you need a different solution such as Blade fallback paths or a namespaced view loader.
- How do I install ibexa/design-engine?
- You do not install it as a discrete package in normal use. It arrives as a transitive dependency when you install Ibexa DXP with Composer, and the DXP metapackage pins the compatible version. The README states directly that you must install Ibexa DXP to use this package. Standalone Composer installation without the DXP kernel is not a supported path.
- What PHP and Symfony versions does ibexa/design-engine require?
- The 5.0 line requires PHP 8.3 or later and Symfony 7.3 or 7.4, alongside the Ibexa DXP kernel and a configured repository and siteaccess. The older 4.6 line remains on an earlier runtime baseline and still receives backports. Any version choice here is really a platform choice, because the package is pinned by the Ibexa DXP release you run.
- What does Ibexa Design Engine actually do?
- It defines a predictable fallback order for templates and assets so a missing view resolves to the next candidate instead of throwing an error. The chain typically moves from site to design to vendor default, using a template path registry and Twig loader integration. It also provides a TwigDataCollector for the Symfony profiler to help debug which candidate won.
- Can I use ibexa/design-engine as a standalone Symfony bundle without Ibexa DXP?
- No. There is no supported standalone mode, no facade over plain Twig, and no adapter for plain Symfony or another CMS. The fallback ordering is bound to Ibexa's design and siteaccess model, so the bundle needs the DXP kernel to function. Treat it as an internal DXP component that happens to be published on Packagist, not as an independent integration target.
- How is template and asset fallback order configured in Ibexa Design Engine?
- Configuration happens through the Ibexa DXP design and theme configuration rather than through package-level settings. You define design variants, asset roots, and the precedence order per siteaccess. Once the DXP platform is in place, the integration work is mostly theme and content configuration measured in hours, not custom code.
- What license does ibexa/design-engine use, and is it free to use?
- The package is dual-licensed under the Ibexa Business Use License version 2.4 or later and the GNU General Public License version 2. The BUL path requires a valid paid Ibexa DXP subscription, while GPLv2 is copyleft and carries source-distribution obligations. GitHub reports NOASSERTION because of this dual licensing, so legal and procurement should decide which branch you operate under before shipping.
- Is ibexa/design-engine actively maintained?
- It is stable and low-churn, with roughly 40 releases and many entries marked as no significant changes. That indicates reliability rather than rich feature velocity, and independent innovation is effectively nil. Maintenance follows the Ibexa DXP release cadence and vendor support rather than community activity, with only about 6 GitHub stars and no dependents or third-party tutorials.
- How do I upgrade ibexa/design-engine from the 4.6 line to 5.0?
- Do not pin this package independently. Let it arrive as a transitive dependency of the DXP metapackage and constrain upgrades through the DXP version bump. Moving from 4.6 to 5.0 is a breaking platform step that raises the minimum to PHP 8.3, moves Symfony 6 to 7, and removes the class_alias backward-compatibility layer. Expect that upgrade to ripple across other bundles and custom code.
- What are alternatives to Ibexa Design Engine for template fallback?
- If you are not on Ibexa DXP, use the native facilities of your framework instead. In Twig, the embed or include tags with ignore missing plus a namespaced loader can cover simpler fallback needs; in Laravel, Blade view fallback paths or a custom namespaced view finder are typical. These are not equivalent to Ibexa's site-to-design-to-vendor precedence model, but they avoid the DXP dependency and the dual-licensing review.