PHPackages                             bachi/typo3-aop - 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. bachi/typo3-aop

AbandonedArchivedTypo3-cms-extension

bachi/typo3-aop
===============

TYPO3 Extension to enable aop programming.

11PHP

Since Jun 16Pushed 6y agoCompare

[ Source](https://github.com/Baachi/typo3-aop)[ Packagist](https://packagist.org/packages/bachi/typo3-aop)[ RSS](/packages/bachi-typo3-aop/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

TYPO3 AOP Extension
===================

[](#typo3-aop-extension)

This extension enables you to use [Aspect Oriented Programming](https://en.wikipedia.org/wiki/Aspect-oriented_programming)in TYPO3. Behind the scenes we use the [goaop](https://github.com/goaop/framework) framework, which is stable and fast.

For more information look at the documentation on [goaop documentation](https://github.com/goaop/framework).

Why do you need this?
---------------------

[](#why-do-you-need-this)

Do you ever need to extend the functionality of a extension or the core itself but no hook or signal slot is in place? With this extension you can hook into every class, no matter what you need.

It gives you to be more flexibility, to find the perfect solution for your case.

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

[](#installation)

Open a command console, enter your project directory and execute the following command to download the latest stable version of this package:

```
$ composer require bachi/typo3-aop:@dev
```

This command requires you to have Composer installed globally, as explained in the [installation chapter](https://getcomposer.org/doc/00-intro.md)of the Composer documentation.

**Attention**: Installtion through the TYPO3 Extension Installer is not supported, due it's limitation of the autoloading process and dependency management.

How to use
----------

[](#how-to-use)

First of all you need to create an `Aspect`:

```
namespace Acme\Demo\Aspect\LoggingAspect

use Go\Aop\Aspect;
use Go\Lang\Annotation\Before;

final class LoggingAspect implements Aspect
{
    /**
     * @Before("execution(public Example->*(*))")
     */
    public function beforeMethodExecution(MethodInvocation $invocation)
    {
        // do some stuff.
    }
}
```

Please be aware, that this aspect implements the `Aspect` interface!

Now we need to register our aspect into the new container:

```
# ext_localconf.php
\Baachi\GoAOP\Kernel\TYPO3AspectKernel::registerAspect(\Acme\Demo\Aspect\LoggingAspect::class);
```

Done! Easy right?

Tuning for production
---------------------

[](#tuning-for-production)

This extension have an `debug` mode, ensure that this option is disabled in your production environment.

Also register an cache warmup command. It's strongly encouraged to run this command in your deployment routine.

```
$ php -dmemory_limit=-1 vendor/bin/typo3 cache:warmup:aop

```

This command consumes a lot of memory!

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 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.

### Community

Maintainers

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

---

Top Contributors

[![Baachi](https://avatars.githubusercontent.com/u/833645?v=4)](https://github.com/Baachi "Baachi (2 commits)")

---

Tags

aoptypo3-cms-extensiontypo3-extension

### Embed Badge

![Health badge](/badges/bachi-typo3-aop/health.svg)

```
[![Health](https://phpackages.com/badges/bachi-typo3-aop/health.svg)](https://phpackages.com/packages/bachi-typo3-aop)
```

PHPackages © 2026

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