Skip to content

Bundles

A bundle in Symfony (and Ibexa Platform) 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 Platform functionalities are provided through separate bundles included in the installation. You can see the bundles that are automatically installed with Ibexa Platform in composer.json.

Working with bundles

All bundles containing built-in Ibexa Platform functionalities are installed automatically. Additionally, you can install community-developed bundles from Ibexa Platform 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.

Removing bundles

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.

Built-in bundles

The following tables give an overview of the main Ibexa Platform bundles.

Core bundles

Bundle Description
ezplatform-kernel contains the core of the whole Ibexa Platform application e.g. EzPublishCoreBundle
ezplatform-content-forms provides form-based integration for the Symfony Forms into Content and User objects in kernel
ezplatform-solr-search-engine Solr-powered search handler for Ibexa Platform
ez-support-tools provides functionality for system information
ezplatform-http-cache HTTP cache handling for Ibexa Platform, using multi tagging (incl Varnish xkey)
ezplatform-admin-ui contains Back Office interface for Ibexa Platform v2+
ezplatform-admin-ui-assets contains assets for AdminUI
ezplatform-design-engine design fallback system for Ibexa Platform similar to legacy design fallback system
ezplatform-standard-design defines standard Design and Theme to be handled by ezplatform-design-engine
ezplatform-cron exposes cron/cron package for use in Ibexa Platform (or just plain Symfony) via a simple command ezplatform:cron:run
ezplatform-graphql defines GraphQL server for Ibexa Platform
ezplatform-matrix-fieldtype dedicated to Matrix Field Type for Ibexa Platform, it replaces previous version found on ezcommunity/EzMatrixFieldTypeBundle
ezplatform-query-fieldtype Field Type that lists Content items based by querying the Repository
ezplatform-rest contains REST API
ezplatform-richtext Field Type for supporting rich formatted text stored in a structured XML format
ezplatform-user dedicated to Ibexa Platform User management.
BehatBundle common reusable sentence implementations and other common needs for Behat testing in bundles/projects

Dxp

Bundle Description
date-based-publisher provides the date based publishing functionality for Ibexa DXP
ezplatform-workflow implementation of a collaboration feature that lets you send content draft to any user for a review or rewriting
ezplatform-page-fieldtype Page handling Field Type
ezplatform-page-builder contains Ibexa DXP Page editor
ezplatform-ee-installer provides ezplatform:install Symfony console command which is the installer for Ibexa DXP v2
ezplatform-http-cache-fastly extends ezplatform-http-cache to support Fastly, for use on Platform.sh PE or standalone
ezplatform-calendar extends the Back Office by adding the calendar tab with the calendar widget
ezplatform-version-comparison allows comparing between two versions of the same Field
ezplatform-form-builder enables creating Form Content items with multiple form fields
ezplatform-site-factory enables configuration of sites from UI
ezplatform-elastic-search-engine provides integration with Elasticsearch search engine

Optional bundles

Bundle Description
ezplatform-i18n centralized internationalization
ezplatform-multi-file-upload allows uploading multiple files as new content items at once
ezplatform-demo-assets contains binary install data for ezsystems/ezplatform-demo

Dxp

Bundle Description
ezstudio-personalized-block Ibexa Personalized Block Bundle

Education

Bundle Description
ezplatform-com the Ibexa Developer Hub for Ibexa Platform (example site)
ezplatform-ee-beginner-tutorial resources used in the Ibexa DXP Beginner Tutorial
docker-php contains PHP docker image example

Documentation - additional resources

Repository Description
developer-documentation source for the developer documentation for Ibexa Platform, an open source CMS based on the Symfony Full Stack Framework in PHP. https://doc.ezplatform.com
user-documentation source for the user documentation for Ibexa Platform, an open source CMS based on the Symfony Full Stack Framework in PHP