Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Themes for Exponential Platform

A short orientation for theme designers asked to design for Exponential Platform DXP, the Symfony line - Twig instead of TPL, designs as ordered theme lists, the @ibexadesign namespace, templates/themes folders, what…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/theme-designers/themes-for-exponential-platform.md

On this page

Themes for Exponential Platform

This page is for theme designers who are asked to design for Exponential Platform DXP, the Symfony-based line of the product family, rather than for Exponential 6 (the PHP kernel this section is about). The design work is largely the same; the template language and the file layout are not. This page gives the differences in brief and points to the DXP developer pages that cover them properly.

Contents

  1. Which product are you designing for
  2. The same idea, different words
  3. Where theme files live
  4. Stylesheets and scripts
  5. What carries over from this section
  6. Where to continue

Which product are you designing for

Ask first. A site on Exponential 6 has .tpl templates, design/ folders in extensions and settings/*.ini files. A site on the DXP has .html.twig templates, a templates/themes/ folder and YAML configuration under config/. Choosing DXP, Legacy, Nexus or Exponential 6 explains the product lines.

The same idea, different words

Exponential 6Exponential Platform DXP
a design (folder of templates)a theme (templates/themes/<theme>/)
the design cascade of a siteaccessa design: an ordered list of themes, first match wins
standard at the end of the cascadethe standard design and theme, provided by ibexa/standard-design
TPL templates, {include uri='design:...'}Twig templates, {% include '@ibexadesign/...' %}
pagelayout.tplpagelayout.html.twig
node/view/full.tpl and overrides by classfull and line view templates mapped to content types in the content view configuration
image aliases in image.iniimage variations (Image variations)

The DXP's design engine (ibexa/design-engine) resolves every @ibexadesign/... name through the current siteaccess's design and its order of themes, much like the cascade. Templates always refer to @ibexadesign/..., never to a theme's folder path (Twig templates and the design engine).

Where theme files live

A project theme is a folder under templates/themes/, and a design that lists it before standard is configured under ibexa_design_engine.design_list; a siteaccess group then uses that design. Bundles can ship themes as well. The steps, with the configuration, are in The standard design and your theme.

Stylesheets and scripts

The DXP has no ezjscore packer. Most projects build their stylesheets and scripts with Webpack Encore and include them with the Encore Twig functions; the design engine can also resolve theme assets from public/assets/themes/<theme>/ (Building assets with Yarn and Encore, The standard design and your theme). The design principles stay the same: no inline scripts or styles, so a Content Security Policy can stay strict.

What carries over from this section

Almost all of the design work in this section is product-neutral:

What does not carry over: TPL syntax, override.ini, design.ini, the packer, and anything in the designer help about Exponential 6 settings files.

Where to continue

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x