A bundle in Symfony (and Ibexa DXP) is a separate part of your application that implements a feature. You can create bundles yourself or make use of available open-source bundles. You can also reuse the bundles you create in other projects or share them with the community.
Many Ibexa DXP functionalities are provided through separate bundles included in the installation.
You can see the bundles that are automatically installed with Ibexa DXP
in the respective
For example, for Ibexa Content, see the JSON file on GitHub.
Working with bundles¶
All bundles containing built-in Ibexa DXP functionalities are installed automatically. Additionally, you can install community-developed bundles from Ibexa DXP Packages.
To learn how to create your own bundles, see Symfony documentation on bundles.
Overriding third-party bundles¶
When you use an external bundle, you can override its parts, such as templates, controllers, etc. To do so, make use of Symfony's bundle override mechanism. Note that when overriding files, the path inside your application has to correspond to the path inside the bundle.
To remove a bundle (either one you created yourself, or an out-of-the-box one that you do not need), see the How to Remove a Bundle instruction in Symfony doc.
Ibexa Open Source is composed of the core packages.
|ibexa/admin-ui-assets||Assets for the Back Office|
|ibexa/admin-ui||Back Office interface|
|ibexa/content-forms||Form-based integration for the Symfony Forms into Content and User objects in kernel|
|ibexa/core-extensions||Core system functionalities|
|ibexa/cron||Cron package for use with the
|ibexa/design-engine||Design fallback system|
|ibexa/graphql||GraphQL server for Ibexa DXP|
|ibexa/http-cache||HTTP cache handling, using multi tagging|
|ibexa/core||Core of the Ibexa DXP application|
|ibexa/matrix-fieldtype||Matrix Field Type|
|ibexa/query-fieldtype||Query Field Type|
|ibexa/richtext||Field Type for supporting rich-formatted text stored in a structured XML format|
|ibexa/search||Common search functionalities|
|ibexa/solr-search-engine||Solr-powered search handler|
|ibexa/standard-design||Standard design and theme to be handled by
Ibexa Content packages¶
|ibexa/date-based-publisher||Date-based publishing functionality|
|ibexa/commerce-base-design||Standard design and theme for the shop|
|ibexa/commerce-checkout||Shop checkout functionality|
|ibexa/commerce-fieldtypes||Shop-specific Field Types|
|ibexa/commerce-price-engine||Engine for handling prices|
|ibexa/commerce-shop-ui||UI for the shop front page|
|ibexa/commerce-shop||Main shop functionalities|
|ibexa/calendar||Calendar tab with a calendar widget|
|ibexa/connector-dam||Connector for DAM (Digital Asset Management) systems|
|ibexa/elastic-search-engine||Integration with Elasticsearch search engine|
|ibexa/http-cache-fastly||Fastly support for
|ibexa/icons||Icon set for the Back Office|
|ibexa/personalization||Functionality for personalized recommendations|
|ibexa/version-comparison||Enables comparing between two versions of the same Field|
|ibexa/workflow||Collaboration feature that enables you to send content draft to any user for a review or rewriting|
|ibexa/recommendation-client||Client for connecting with the personalization engine|
|ibexa/migrations||Migration of Repository data|
Ibexa Experience packages¶
|ibexa/form-builder||Enables creating Form Content items with multiple form fields|
|ibexa/page-fieldtype||Page handling Field Type|
|ibexa/permissions||Additional permission functionalities|
|ibexa/segmentation||Segment functionality for profiling the content displayed to specific users|
|ibexa/site-factory||Enables configuration of sites from UI|
Ibexa Commerce packages¶
|ibexa/commerce-admin-ui||Shop-related Back Office functionalities|
|ibexa/commerce-erp-admin||ERP connection for the shop|
|ibexa/commerce-order-history||Order history functionality|
|ibexa/commerce-page-builder||Shop-related Page blocks|
|ibexa/commerce-transaction||Transactional shop functionalities|