Introduction
What does it do?
This TYPO3 extension, based on Extbase and Fluid, is an example of best practices in building an extension and securing its quality by automated code checks, unit/functional/acceptance testing and continuous integration (CI).
Note
This is not a kickstarter extension.
This extension should not be used to kickstart other extensions. Instead, this extension should serve as an example for best practices.
Why is this extension called "tea"?
This extension aims to cover all fundamental aspects of developing an Extbase extension. The fictional use case is the management of tea varieties. The required models, classes, controllers, and other components represent all typical parts of an Extbase extension. Additional examples demonstrate how to test these components.
Since well-chosen extension names should reflect their domain, this extension is
named “tea”. While we could have added _example to indicate that it is a
sample extension, this would contradict our goal of demonstrating best practices.
This is not related to the tea package manager.
Target group
The target group for this extension is TYPO3 extension developers. Typical use cases include:
- Gaining inspiration by exploring the code
- Cloning the tea extension locally to access a working example of tests, which can then be adapted for your own extension
Presentation at the TYPO3 Online Days 2021
At the TYPO3 Online Days 2021, Oliver Klee held a session presenting our approach to automate extension code quality. Have a look at the slides and the video of the presentation!

