Prerequisites and Useful Tools


If you are using DDEV to setup your TYPO3 installation, it is not necessary to install the tools locally (e.g. Composer, yarn). They will be supplied by DDEV and you can run them inside the container.

In that case you can skip right to ddev.

Here’s a list of the tools we use in the TYPO3 project:

If some of these are new for you, take a few minutes to read up about what they do for us. Maybe they prove useful in your everyday work as well. You can find installation tutorials in the Appendix section.


– required (depends)

If you use a container solution, such as DDEV, you can run composer install from inside the container, see composer install.

Composer is a dependency manager for PHP.

Follow the installation instructions from Afterwards, you should have a working executable composer available.

Verify composer is working:

$ composer --version

Setting up Your Frontend Build Toolchain.

– required (depends)

Yarn and Grunt are not required for setting up a working TYPO3 installation. You will need them however if you plan to create patches which require changing frontend files. See yarn build for more information on this.


TYPO3 itself does not need yarn to run, but yarn is something similar to composer, but for the world outside of PHP. We will be mainly using yarn to get helpful tools like Grunt and Bower.

Install on MacOS

  1. install the packagemanager homebrew:

    /usr/bin/ruby -e "$(curl -fsSL"
  2. install yarn:

    brew install yarn

Installer for Windows and MacOS

  1. Go to
  2. Download the package and install


  1. Go to
  2. Download the package and install

For additional infos see

Install all Required Packages

The later section yarn install will explain how to set everything up in your TYPO3 working directory.


Grunt is a JavaScript-based task runner. While this does not sound very expressive at first this is basically, what grunt does - it runs tasks for us.

In our case grunt compiles CSS, minifies and concatenates JavaScript files, runs syntax checks and a couple of other useful things. The good news is that TYPO3 comes with a predefined set of tasks that grunt will run, so you don’t have to take care of all the busywork underneath.