Switch to Development context

You should enable the Development context for your first steps into the world of Flow!
Check the Flow reference and/or the Quickstart tutorial for instructions.

Getting started

Here's how to get into the flow:

  1. Kickstart your first package

    Go to /home/www/customercare.trotec.com
    and run
    ./flow kickstart:package MyCompany.MyPackage
    to create a package with a standard controller

  2. Test your controller

    "MyCompany.MyPackage" has either not yet been created or not activated. Follow step 1 and reload this page.

    If you named your package "SomethingElse" visit https://customercare.trotec.com/SomethingElse/

  3. Read the tutorial

    Switch over to the Quickstart Tutorial to get the a first overview.

  4. Deactivate the Welcome package (optional)

    Deactivate the Welcome package with
    ./flow package:deactivate Neos.Welcome

    Afterwards make sure to remove the "Welcome" SubRoute definition from the global routes in Configuration/Routes.yaml.


About Flow

Flow is an offspring from the development of Neos and can be used independently as an application framework. It is licensed under the terms of the MIT license.


Many people have contributed to Flow with ideas, design, testing, money, code and espresso. A big thank you goes to the community and the members of the TYPO3 Association who made the development of Flow possible in the first years.

The main part of Flow was designed and developed by Robert Lemke. The persistence integration was developed and major contributions to Flow were made by Karsten Dambekalns. Andreas Förthner designed and developed the Security Framework while Bastian Waidelich created the initial implementation of Flow's routing mechanism. Sebastian Kurfürst and Bastian Waidelich designed and implemented the Fluid templating engine.

Further code contributions were made by the Neos team and others: Adrian Föder, Alexander Stehlik, Andreas Wolf, Aske Ertmann, Bernhard Fischer, Christian Jul Jensen, Christian Kuhn, Christian Müller, Christopher Hlubek, Daniel Brün, Felix Oertel, Ferdinand Kuhl, Irene Höppner, Jochen Rau, Johannes Künsebeck, Julian Kleinhans, Julian Wachholz, Karol Gusak, Lars Peipmann, Lienhart Woitok, Marco Huber, Martin Brüggemann, Martin Ficzel, Michael Klapper, Michael Sauter, Nils Jeisecke, Oliver Hader, Rens Admiraal, Sascha Egerer, Stefan Neufeind, Stephan Schuler, Thomas Hempel, Thomas Layh, Tim Eilers, Tobias Liebig, Tolleiv Nietsch and Zach Davis.

The initial design of the AOP framework and the IoC container were inspired by the viFramework developed by Florian Grandel who also pointed Robert to the Spring Framework which was a great source for inspiration. Further frameworks and projects which influenced the design of Flow are AspectJ, NanoContainer, Ruby on Rails, Symfony, QT and surely more.

The overall design and concepts would be way less mature and elegant if experts like Martin Fowler, Eric Evans, Jimmy Nilsson, Kent Beck or Paul Duvall wouldn't have shared their insights in books and talks.

Many more contributions have been made by various members of the TYPO3 and PHP community - thanks to all of you!

Installed Packages

  • psr.simplecache

  • psr.cache

  • neos.errormessages

  • Neos.Utility.Files

  • Neos.Utility.Pdo

  • Neos.Utility.OpcodeCache

  • Neos.Cache

  • neos.utilityunicode

  • Neos.Utility.ObjectHandling

  • Neos.Utility.Arrays

  • Neos.Utility.MediaTypes

  • Neos.Utility.Schema

  • typo3fluid.fluid

  • psr.log

  • Neos.Flow.Log

  • psr.httpmessage

  • psr.container

  • paragonie.randomcompat

  • symfony.polyfillctype

  • ramsey.uuid

  • doctrine.lexer

  • doctrine.annotations

  • doctrine.cache

  • doctrine.collections

  • doctrine.inflector

  • doctrine.eventmanager

  • doctrine.reflection

  • doctrine.persistence

  • doctrine.common

  • doctrine.dbal

  • doctrine.instantiator

  • symfony.polyfillmbstring

  • symfony.polyfillphp73

  • symfony.servicecontracts

  • symfony.console

  • doctrine.orm

  • zendframework.zendeventmanager

  • zendframework.zendcode

  • ocramius.packageversions

  • ocramius.proxymanager

  • doctrine.migrations

  • symfony.yaml

  • symfony.domcrawler

  • neos.composerplugin

  • org.bovigo.vfs

  • myclabs.deepcopy

  • Neos.Eel

  • neos.utilitylock

  • Neos.Flow

  • Neos.FluidAdaptor

  • Neos.Welcome

  • Neos.Behat

  • Trotec.CustomerCare

  • Neos.Kickstarter

  • phpdocumentor.reflectioncommon

  • phpdocumentor.typeresolver

  • webmozart.assert

  • phpdocumentor.reflectiondocblock

  • sebastian.diff

  • sebastian.recursioncontext

  • sebastian.exporter

  • sebastian.comparator

  • phpspec.prophecy

  • theseer.tokenizer

  • phpunit.phptexttemplate

  • phpunit.phpunitmockobjects

  • phpunit.phptimer

  • phpunit.phpfileiterator

  • phpunit.phptokenstream

  • sebastian.codeunitreverselookup

  • sebastian.environment

  • sebastian.version

  • phpunit.phpcodecoverage

  • sebastian.globalstate

  • sebastian.objectreflector

  • sebastian.objectenumerator

  • sebastian.resourceoperations

  • phpunit.phpunit