It can be used independently of TYPO3 as a development framework for various applications, RIAs or websites.
It's making extensive use of software development paradrigms that had not been brought to PHP programming yet.
Here are some key features of "TYPO3 Flow":
- The Object Manager is in charge of building, caching and combining objects. It is a lightweight Inversion-of-Control container with first-class support for Dependency Injection.
- The AOP Framework enables you to use the powerful techniques of Aspect Oriented Programming.
- The MVC Framework takes care of requests and responses and provides you with a powerful, easy-to use Model-View-Controller implementation.
- The Persistence Framework realizes a unique transparent persistence layer based on the principles of Domain-Driven Design, backed by our JSR-283 based content repository.
- The Validation module provides a validation and filtering framework with built-in rules as well as support for custom validation of any object.
- The Property module implements the concept of property editors and is used for setting and retrieving object properties.
- The Package Manager allows you to download, install, configure and uninstall packages and share new features with the FLOW3 community.
- The Resource Manager contains functions for providing, caching, securing and retrieving resources.
- The Signal Slot sub package provides an annotation based event system based on the Signal Slot design pattern.
- The Error module handles errors and exceptions and provides utility classes for this purpose.
- The Reflection API complements PHP's built-in reflection support by advanced annotation handling and metadata caching for speed.
- The Security Framework provides "touchless" security by enforcing security policies through AOP.
- PHP 5.3.0 or higher
- Optional: Webserver (Apache, IIS)
- Optional: Database (MySQL, PostgreSQL)
- Optional: Internet connection
- At least 180 MB memory for PHP
- Doctrine 2 Annotations
- Session Handling