PHPackages                             oliverklee/oelib - 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. [Templating &amp; Views](/categories/templating)
4. /
5. oliverklee/oelib

ActiveTypo3-cms-extension[Templating &amp; Views](/categories/templating)

oliverklee/oelib
================

Useful stuff for TYPO3 extension development: helper functions for unit testing and templating.

v6.3.1(1mo ago)0877.5k↓16%7[75 issues](https://github.com/oliverklee-de/oelib/issues)[4 PRs](https://github.com/oliverklee-de/oelib/pulls)3GPL-2.0-or-laterPHPPHP ^7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0CI passing

Since Jul 18Pushed 2w ago1 watchersCompare

[ Source](https://github.com/oliverklee-de/oelib)[ Packagist](https://packagist.org/packages/oliverklee/oelib)[ Docs](https://www.oliverklee.de/typo3-services/typo3-extensions/)[ RSS](/packages/oliverklee-oelib/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (10)Dependencies (56)Versions (133)Used By (3)

"One Is Enough" library TYPO3 extension
=======================================

[](#one-is-enough-library-typo3-extension)

[![TYPO3 V11](https://camo.githubusercontent.com/5432de37ab8517e6d9e6f803a2e1a7674a308c6d93896fe8a6fbc8a4cb50aece/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5459504f332d31312d6f72616e67652e737667)](https://get.typo3.org/version/11)[![TYPO3 V12](https://camo.githubusercontent.com/08afacc49187e63c796f7d1c4401d0f0563bab574d9c525312b2827acb09a7c5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5459504f332d31322d6f72616e67652e737667)](https://get.typo3.org/version/12)[![License](https://camo.githubusercontent.com/f00da59280ba1f117adb07c977dde433a510408751f87adf3d1eec1532c28e1d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6f6c697665726b6c65652d64652f6f656c6962)](https://packagist.org/packages/oliverklee/oelib)[![GitHub CI Status](https://github.com/oliverklee-de/oelib/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/oliverklee-de/oelib/actions)[![Coverage Status](https://camo.githubusercontent.com/b57afb3c223ae5cbaf74b506d1cac1ed9547385a5b84b8aa768769ac7ef1c331/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f6f6c697665726b6c65652d64652f6f656c69622f62616467652e7376673f6272616e63683d6d61696e)](https://coveralls.io/github/oliverklee-de/oelib?branch=main)

This extension provides useful stuff for extension development: helper functions for unit testing, templating and automatic configuration checks.

Most of the documentation is in ReST format [in the Documentation/ folder](Documentation/) and is rendered [as part of the TYPO3 documentation](https://docs.typo3.org/typo3cms/extensions/oelib/).

Running the tests locally
-------------------------

[](#running-the-tests-locally)

You will need to have a Git clone of the extension for this with the Composer dependencies installed.

### Running the unit tests

[](#running-the-unit-tests)

#### On the command line

[](#on-the-command-line)

To run all unit tests on the command line:

```
composer check:tests:unit
```

To run all unit tests in a directory or file (using the directory `Tests/Unit/Model/` as an example):

```
.Build/vendor/bin/phpunit -c .Build/vendor/typo3/testing-framework/Resources/Core/Build/UnitTests.xml Tests/Unit/Model/
```

#### In PhpStorm

[](#in-phpstorm)

First, you need to configure the path to PHPUnit in the settings:

Languages &amp; Frameworks &gt; PHP &gt; Test Frameworks

In this section, configure PhpStorm to use the Composer autoload and the script path `.Build/vendor/autoload.php` within your project.

In the Run/Debug configurations for PHPUnit, use an alternative configuration file:

`.Build/vendor/typo3/testing-framework/Resources/Core/Build/UnitTests.xml`

###  Health Score

68

—

FairBetter than 99% of packages

Maintenance93

Actively maintained with recent releases

Popularity40

Moderate usage in the ecosystem

Community25

Small or concentrated contributor base

Maturity98

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 75.1% 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 ~47 days

Recently: every ~125 days

Total

77

Last Release

53d ago

Major Versions

v3.6.3 → v4.0.02021-10-09

v3.6.4 → v4.1.32022-02-24

v4.3.0 → v5.0.02022-09-26

v4.3.1 → v5.0.22022-12-18

v5.2.2 → v6.0.02024-04-16

PHP version history (12 changes)1.0.0PHP &gt;=5.5.0,&lt;8.0

v0.9.4PHP ^5.4.0 || ~7.0.0

v1.4.0PHP ^5.5.0 || ~7.0.0

v2.0.0PHP ^5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0

v3.0.0PHP ~7.0 || ~7.1 || ~7.2

v3.1.0PHP ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0

v3.4.0PHP ^7.0.0 || ~8.0.0

v4.0.0PHP ^7.2.0 || ~8.0.0

v5.0.0PHP ^7.2.0 || ~8.0.0 || ~8.1.0 || ~8.2.0

v5.2.0PHP ^7.2.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0

v6.0.0PHP ^7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0

v6.1.0PHP ^7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/2cc98eb6580d4532340e818ea893009da65365b7f3525f518d143732e838735a?d=identicon)[oliverklee](/maintainers/oliverklee)

---

Top Contributors

[![oliverklee](https://avatars.githubusercontent.com/u/765746?v=4)](https://github.com/oliverklee "oliverklee (1457 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (346 commits)")[![Konafets](https://avatars.githubusercontent.com/u/363363?v=4)](https://github.com/Konafets "Konafets (99 commits)")[![AnReiter](https://avatars.githubusercontent.com/u/234920694?v=4)](https://github.com/AnReiter "AnReiter (29 commits)")[![emilkneu](https://avatars.githubusercontent.com/u/122222511?v=4)](https://github.com/emilkneu "emilkneu (2 commits)")[![lochmueller](https://avatars.githubusercontent.com/u/3907126?v=4)](https://github.com/lochmueller "lochmueller (1 commits)")[![pascal20997](https://avatars.githubusercontent.com/u/1337769?v=4)](https://github.com/pascal20997 "pascal20997 (1 commits)")[![abhinayvjk](https://avatars.githubusercontent.com/u/111815363?v=4)](https://github.com/abhinayvjk "abhinayvjk (1 commits)")[![webermann](https://avatars.githubusercontent.com/u/454851?v=4)](https://github.com/webermann "webermann (1 commits)")[![bouche](https://avatars.githubusercontent.com/u/769708?v=4)](https://github.com/bouche "bouche (1 commits)")[![Braunson](https://avatars.githubusercontent.com/u/577273?v=4)](https://github.com/Braunson "Braunson (1 commits)")[![davidjakob](https://avatars.githubusercontent.com/u/4965254?v=4)](https://github.com/davidjakob "davidjakob (1 commits)")[![jokumer](https://avatars.githubusercontent.com/u/6431813?v=4)](https://github.com/jokumer "jokumer (1 commits)")

---

Tags

hacktoberfestphptypo3typo3-cms-extensionlibrarytemplatingextension

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/oliverklee-oelib/health.svg)

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

###  Alternatives

[pagemachine/typo3-formlog

Form log for TYPO3

23238.6k8](/packages/pagemachine-typo3-formlog)[pagemachine/searchable

TYPO3 extension to index and search content with Elasticsearch

1039.9k](/packages/pagemachine-searchable)[friendsoftypo3/content-blocks

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

103519.9k53](/packages/friendsoftypo3-content-blocks)[eliashaeussler/typo3-form-consent

Extension for TYPO3 CMS that adds double opt-in functionality to EXT:form

1595.5k](/packages/eliashaeussler-typo3-form-consent)[eliashaeussler/typo3-warming

Warming - Warms up Frontend caches based on an XML sitemap. Cache warmup can be triggered via TYPO3 backend or using a console command. Supports multiple languages and custom crawler implementations.

22260.2k](/packages/eliashaeussler-typo3-warming)[typo3/cms-install

TYPO3 CMS Install Tool - The Install Tool is used for installation, upgrade, system administration and setup tasks.

1812.3M496](/packages/typo3-cms-install)

PHPackages © 2026

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