TYPO3 is an extremely modular system that can be easily enhanced with custom extensions. All TYPO3 sites are built on top of the TYPO3 core, which contains the system's fundamental functionality. Custom extensions interact with the core through the stable, clearly documented extension API. While the TYPO3 core does change in each new release, the interfaces between extensions and the core do not, ensuring easy updates and future-proof development.
The TYPO3 Extension Manager
TYPO3 relies on the TYPO3 extension manager— included in the TYPO3 core—for installing, activating, and deactivating extensions on a given TYPO3 installation. Extensions can be quickly imported and installed with just a couple clicks in the TYPO3 backend.
Kickstarter Simplifies Extension Development
The extension kickstarter significantly reduces the time required to create a new TYPO3 extension, and automates the creation of interfaces for custom database records in the TYPO3 backend.
ExtBase: TYPO3's Built-in MVC Framework
Recent versions of TYPO3 include a built-in Model-View-Controller (MVC) framework called extBase, which allows developers to take advantage of this popular PHP design pattern.
FLUID: Next Generation Templating
Fluid—TYPO3's next generation templating system—is used for creating custom extension templates. Fluid was created for TYPO3 5.0, currently under development, and has been back-ported to the TYPO3 4.x branch. Fluid's approach to creating templates emphasizes simplicity, flexibility, extensibility, and easy of use.
Extensive Configuration Options
Nearly every aspect of the TYPO3 backend is configurable and customizable. Backend interfaces can often be configured using TSConfig. Nearly all rendered HTML content can be configured using Typoscript, a declarative configuration language used throughout TYPO3 for controlling front-end output.