PHPackages                             rfuehricht/configloader - 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. rfuehricht/configloader

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

rfuehricht/configloader
=======================

Configuration Loader

1.0.5(11mo ago)0556↓50%GPL-3.0-or-laterPHPPHP ~8.2 || ~8.3 || ~8.4

Since Mar 11Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/rfuehricht/configloader)[ Packagist](https://packagist.org/packages/rfuehricht/configloader)[ RSS](/packages/rfuehricht-configloader/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (6)Used By (0)

EXT:configloader - Configuration Loading for TYPO3
==================================================

[](#extconfigloader---configuration-loading-for-typo3)

This extension uses `hassankhan/config` to load configuration files in any supported format.

Visit  for details.

How it works
------------

[](#how-it-works)

Place files in supported format in supported directories and `EXT:configloader` parses them automatically:

- Project root folder
- `config/system`
- `config/sites/[site-identifier]` for site related settings

After loading, the configuration is available via `ConfigurationUtility->get()`. Via various helper functions and View Helpers you can also access the configuration values in TypoScript, Site configurations and Fluid templates.

Use dot notation to access nested configuration keys.

You can add your own configuration files using an `EventListener`. See section below.

> It is recommended to prefix configuration files with `.` to be hidden files on UNIX system by default.

Example configuration file in JSON format
-----------------------------------------

[](#example-configuration-file-in-json-format)

```
{
  "typo3": {
    "setting": "foo"
  }
}

```

Installation
------------

[](#installation)

Just require the extension via composer:

```
composer require rfuehricht/configloader

```

Configuration
-------------

[](#configuration)

In the TYPO3 backend, navigate to `Settings -> Configure extensions`. There, you can adjust the default format and file name of configuration files.

You can select to load all supported file formats and configure "\*" as file name to load ALL available files in a folder.

The default file name and format loaded is `.settings.yaml`.

Usage
-----

[](#usage)

`EXT:configloader` additionally provides helper functions and uses TYPO3 hooks to provide configuration at different places in backend and frontend.

### ViewHelper

[](#viewhelper)

The viewhelper `getConfig` may be used to access configuration in Fluid templates:

```

```

### TypoScript

[](#typoscript)

In TypoScript you can access configuration either in values or in conditions:

```
page.5 = TEXT
page.5.value := getConfig(typo3.setting)

```

```
[getConfig('typo3.setting') == 'foo']
page.10.value = foo
[end]

```

### Site Configuration

[](#site-configuration)

You can also use placeholders in site configuration files:

```
languages:
  -
    title: '%getConfig(typo3.setting)%'
    enabled: true
    languageId: 0
    base: /
    locale: de_AT.UTF-8
    navigationTitle: Deutsch
    flag: at
rootPageId: '%getConfig(mySite.rootPageId)%'

```

> In site configuration you can NOT use configuration values defined in configuration files in your site configuration folder (e.g. `config/sites/default/.settings.yaml`). These file cannot be loaded before loading the site configuration.

### TCA

[](#tca)

It may be needed, to have configuration items selectable in a TCA record. `EXT:configloader` provides an `ItemsProcFunc` to create a select field:

```
$GLOBALS['TCA']['tt_content']['columns']['myfield']['config'] = [
    'type' => 'select',
    'renderType' => 'selectSingle',
    'items' => [
        ['', '']
    ],
    'itemsProcFunc' => \Rfuehricht\Configloader\Backend\ItemsProcFunc::class . '->getConfigurationKeys'
];

```

### PHP

[](#php)

In your custom PHP code, you can load and access the configuration using:

```
use Rfuehricht\Configloader\Utility\ConfigurationUtility;
...

class MyClass
{

    public function __construct(
        protected ConfigurationUtility $configurationUtility
    )
    {}

    public function myFunction(): void
    {
        $configurationValue = $this->configurationUtility->get('typo3.setting');
    }

}

```

In places without dependency injection (e.g. additional.php):

```
$configurationUtility = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\Rfuehricht\Configloader\Utility\ConfigurationUtility::class);
$configurationValue = $configurationUtility->get('typo3.setting');

```

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance51

Moderate activity, may be stable

Popularity16

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

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 ~20 days

Total

5

Last Release

349d ago

PHP version history (2 changes)1.0.0PHP ~8.2 || ~8.3

1.0.4PHP ~8.2 || ~8.3 || ~8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/67321c806c6cfdcc7cefb65bb80859480391e2f3f3b075144038f97bce1a43c9?d=identicon)[rfuehricht](/maintainers/rfuehricht)

---

Top Contributors

[![rfuehricht](https://avatars.githubusercontent.com/u/144118058?v=4)](https://github.com/rfuehricht "rfuehricht (13 commits)")

### Embed Badge

![Health badge](/badges/rfuehricht-configloader/health.svg)

```
[![Health](https://phpackages.com/badges/rfuehricht-configloader/health.svg)](https://phpackages.com/packages/rfuehricht-configloader)
```

###  Alternatives

[b13/container

Create Custom Container Content Elements for TYPO3

1823.1M63](/packages/b13-container)[fluidtypo3/flux

The flux package from FluidTYPO3

152982.2k20](/packages/fluidtypo3-flux)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[wazum/sluggi

TYPO3 extension for URL slug management with inline editing, auto-sync, locking, access control, and redirects

39488.5k](/packages/wazum-sluggi)[typo3/cms-redirects

TYPO3 CMS Redirects - Create manual redirects, list existing redirects and automatically createredirects on slug changes.

167.0M55](/packages/typo3-cms-redirects)[b13/doktypemapper

Maps your page.doktype to page.backend\_layout

14109.2k](/packages/b13-doktypemapper)

PHPackages © 2026

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