PHPackages                             sulu/theme-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. sulu/theme-bundle

ActiveSulu-bundle[Utility &amp; Helpers](/categories/utility)

sulu/theme-bundle
=================

The Sulu Bundle which provides theming functionality.

3.1.1(1y ago)23300.4k↓24.7%17[1 issues](https://github.com/sulu/SuluThemeBundle/issues)1MITPHPPHP ^7.3 || ^8.0CI failing

Since Jul 22Pushed 3mo ago10 watchersCompare

[ Source](https://github.com/sulu/SuluThemeBundle)[ Packagist](https://packagist.org/packages/sulu/theme-bundle)[ RSS](/packages/sulu-theme-bundle/feed)WikiDiscussions 3.2 Synced 1mo ago

READMEChangelog (10)Dependencies (18)Versions (22)Used By (1)

SuluThemeBundle
===============

[](#suluthemebundle)

 [ ![Official Sulu Bundle Badge](https://camo.githubusercontent.com/8ac484ac60dbf97b4f747c6d0f704a16d2c005414d62dfcb2525b7c4cbf82466/68747470733a2f2f73756c752e696f2f75706c6f6164732f6d656469612f383030782f30302f3233302d4f6666696369616c25323042756e646c652532305365616c2e7376673f763d322d3626696e6c696e653d31) ](https://sulu.io/)

 [ ![GitHub license](https://camo.githubusercontent.com/70e63805be497704da955227e7de049a19216a7e90041299cde5b6cb5d454f19/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f73756c752f53756c755468656d6542756e646c652e737667) ](https://github.com/sulu/SuluThemeBundle/blob/3.x/LICENSE) [ ![GitHub tag (latest SemVer)](https://camo.githubusercontent.com/a707b4e99f9cf1aaa5c6cd6a69fcc5f691ca488292297dbbdbc9a54913b6925a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f7461672f73756c752f53756c755468656d6542756e646c652e737667) ](https://github.com/sulu/SuluThemeBundle/releases) [ ![Test workflow status](https://camo.githubusercontent.com/2d9f1dafa8792c5a4658111252b865c29a18b0e1378dc2a1cb1c43395e38b5ce/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f776f726b666c6f772f7374617475732f73756c752f53756c755468656d6542756e646c652f546573742532306170706c69636174696f6e2e7376673f6c6162656c3d746573742d776f726b666c6f77) ](https://github.com/sulu/SuluThemeBundle/actions) [ ![Sulu compatibility](https://camo.githubusercontent.com/90a56b0395c28be216880d53f87f9c4ad379b6bdad189115e0561c508f899d2c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f73756c75253230636f6d7061746962696c6974792d2533453d322e302d3532623663612e737667) ](https://github.com/sulu/sulu/releases)

The **SuluThemeBundle** provides the functionality to add multiple themes for different look and feel using multiple webspaces in the [Sulu](https://sulu.io/) content management system.

To achieve this, the bundle uses the [SyliusThemeBundle](https://github.com/Sylius/SyliusThemeBundle) to render different twig templates and asset files. Each webspace can have it's own theme.

🚀 Installation and Usage
------------------------

[](#-installation-and-usage)

### Install the bundle

[](#install-the-bundle)

Execute the following [composer](https://getcomposer.org/) command to add the bundle to the dependencies of your project:

```
composer require sulu/theme-bundle
```

### Enable the bundle

[](#enable-the-bundle)

Enable the bundle by adding it to the list of registered bundles in the `config/bundles.php` file of your project:

```
return [
    /* ... */
    Sulu\Bundle\ThemeBundle\SuluThemeBundle::class => ['all' => true],
];
```

### Configure the SyliusThemeBundle

[](#configure-the-syliusthemebundle)

In order to use the bundle you have to add at least the following default configuration:

```
# ./config/packages/sylius_theme.yaml

sylius_theme:
    sources:
        filesystem: ~
```

By default, the bundle seeks for the themes in the `%kernel.project_dir%/themes` directory and looks for a theme configuration file named `composer.json`. This can be changed via the yaml configuration:

```
sylius_theme:
    sources:
        filesystem:
            filename: theme.json
```

For more detailed information about the configuration sources go to the [SyliusThemeBundle documentation](https://github.com/Sylius/SyliusThemeBundle/blob/master/docs/configuration_sources.md).

### Configure your themes

[](#configure-your-themes)

Every theme must have its own configuration file in form of a `theme.json`. Go to the [Theme Configuration Reference](https://github.com/Sylius/SyliusThemeBundle/blob/master/docs/theme_configuration_reference.md)for the detailed documentation about the configuration options.

The minimal configuration for a theme would be the following:

```
// ./themes//theme.json

{
  "name": "vendor/"
}
```

It is important, that the `name` matches the naming convention of composer (`vendor/name`).

### Create a theme

[](#create-a-theme)

First you have to create the directory `themes` inside your project. To create a theme you have to create a new directory in the themes folder with the name of the new theme. In the newly created directory you have to add the theme configuration file `theme.json`. See [Configure your themes](#configure-your-themes). Additonally you have to create the `templates` directory next to the `theme.json`. Afterwards you have to fill this folder with all the used templates and assets for this theme.

This results in the following project structure:

```
ProjectName
├── composer.json
├── assets
├── bin
├── config
├── templates
├── themes
│   ├──
│   │   ├── templates
│   │   │   └── base.html.twig
│   │   └── theme.json
│   └──
│       ├── templates
│       │   └── base.html.twig
│       └── theme.json
├── ...
└── ...

```

### Add one of your themes to a webspace

[](#add-one-of-your-themes-to-a-webspace)

Each webspace can use a different theme. A theme can be enabled for a specific webspace by adding the theme name `vendor/theme-name` to your webspace:

```

    example.com
    example
    ...
    vendor/theme-name
    ...

```

❤️ Support and Contributions
----------------------------

[](#️-support-and-contributions)

The Sulu content management system is a **community-driven open source project** backed by various partner companies. We are committed to a fully transparent development process and **highly appreciate any contributions**.

In case you have questions, we are happy to welcome you in our official [Slack channel](https://sulu.io/services-and-support). If you found a bug or miss a specific feature, feel free to **file a new issue** with a respective title and description on the the [sulu/SuluThemeBundle](https://github.com/sulu/SuluThemeBundle) repository.

📘 License
---------

[](#-license)

The Sulu content management system is released under the under terms of the [MIT License](LICENSE).

###  Health Score

56

—

FairBetter than 98% of packages

Maintenance59

Moderate activity, may be stable

Popularity45

Moderate usage in the ecosystem

Community28

Small or concentrated contributor base

Maturity77

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~165 days

Recently: every ~309 days

Total

22

Last Release

125d ago

Major Versions

1.4.0-RC1 → 2.0.02019-10-03

2.0.0 → 3.0.02020-11-19

PHP version history (6 changes)1.0.0PHP ^5.5 || ^7.0

1.2.0-RC1PHP ~5.5 || ~7.0

2.0.0PHP ^7.2

3.0.0PHP ^7.3

3.0.2PHP ^7.3 || ^8.0

3.2.0-RC1PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/5dbafb2ec00aab7a9f476cf2dd77f63923acfda214ec7bf728c662a9e88f39c7?d=identicon)[chirimoya](/maintainers/chirimoya)

![](https://www.gravatar.com/avatar/e43a10984e8ee1687abaac86c26311c6a607b9560e8a3cc3193f8245751618bc?d=identicon)[wachterjohannes](/maintainers/wachterjohannes)

![](https://avatars.githubusercontent.com/u/1698337?v=4)[Alexander Schranz](/maintainers/alexander-schranz)[@alexander-schranz](https://github.com/alexander-schranz)

![](https://www.gravatar.com/avatar/79a96e73697310472951fe9173230a10d1d23f6a5b8074d260d2bb848dcbb775?d=identicon)[Prokyonn](/maintainers/Prokyonn)

---

Top Contributors

[![niklasnatter](https://avatars.githubusercontent.com/u/13310795?v=4)](https://github.com/niklasnatter "niklasnatter (24 commits)")[![danrot](https://avatars.githubusercontent.com/u/405874?v=4)](https://github.com/danrot "danrot (20 commits)")[![alexander-schranz](https://avatars.githubusercontent.com/u/1698337?v=4)](https://github.com/alexander-schranz "alexander-schranz (16 commits)")[![Prokyonn](https://avatars.githubusercontent.com/u/25978473?v=4)](https://github.com/Prokyonn "Prokyonn (6 commits)")[![plozmun](https://avatars.githubusercontent.com/u/879675?v=4)](https://github.com/plozmun "plozmun (5 commits)")[![wachterjohannes](https://avatars.githubusercontent.com/u/1464615?v=4)](https://github.com/wachterjohannes "wachterjohannes (4 commits)")[![mario-fehr](https://avatars.githubusercontent.com/u/14167832?v=4)](https://github.com/mario-fehr "mario-fehr (2 commits)")[![mamazu](https://avatars.githubusercontent.com/u/14860264?v=4)](https://github.com/mamazu "mamazu (2 commits)")[![thomasduenser](https://avatars.githubusercontent.com/u/3875917?v=4)](https://github.com/thomasduenser "thomasduenser (1 commits)")[![websmurf](https://avatars.githubusercontent.com/u/4027236?v=4)](https://github.com/websmurf "websmurf (1 commits)")

---

Tags

phpsulusulu-bundlethemesulu

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/sulu-theme-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/sulu-theme-bundle/health.svg)](https://phpackages.com/packages/sulu-theme-bundle)
```

###  Alternatives

[sulu/article-bundle

Bundle for managing localized content-rich entities like blog-posts in the Sulu content management system

66409.6k2](/packages/sulu-article-bundle)[sulu/automation-bundle

The Sulu Bundle which provides automation functionality

18289.1k8](/packages/sulu-automation-bundle)[robole/sulu-ai-translator-bundle

Translate any type of content using DeepL

181.3k](/packages/robole-sulu-ai-translator-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
