---
title: "System Overview"
manual: "TYPO3 Explained"
version: "12.4"
permalink: "https://docs.typo3.org/permalink/t3coreapi:overview@12.4"
source: "ApiOverview/SystemOverview/Index.rst"
rendered: "2026-10-21T15:29:37+00:00"
---

> [!WARNING]
> **Attention**
>
> TYPO3 v12 has reached end-of-life as of April 30th 2026 and
> is no longer being maintained. Use the version switcher on the top
> left of this page to select documentation for a supported version of TYPO3.
>
> Need more time before upgrading?
> You can purchase Extended Long Term Support (ELTS) for TYPO3 v12 here:
> [TYPO3 ELTS](https://typo3.com/services/extended-support-elts).

<a id="system-overview"></a>

# System Overview {#overview}

The TYPO3 system is multi-layered. The backend and frontend user interfaces
sit on top of the application layer, which in turn sits on top of the infrastructure
layer. The webserver, database and PHP in the infrastructure layer are
prerequisites for running TYPO3.

The TYPO3 Core primarily consists of an API (Application Programming Interface),
which defines a framework for managing content in the project. The API
includes functionality for content storage, user permissions and access, content
editing, and file management. This functionality is delivered via system
**extensions** that use the API. All of the content is stored in a database
that TYPO3 accesses via the API.

Extensions are clearly defined parcels of code, such as plugins, backend
modules, application logic, skins, and third-party apps.

The most important thing to note is that the TYPO3 CMS consists solely
of extensions. The most basic functions are packaged in a system extension called
"core".

![TYPO3 System layers diagram](../../Images/Graphics/Typo3CmsStructure.svg)

## Application layer {#system-overview-application}

The TYPO3 Core framework interacts with system and 3rd party extensions via
the TYPO3 extension API.

The core and extensions interact with each other seamlessly and operate as a
single, unified system.

## User interface layer {#system-overview-ui}

The backend is the **content-creation** side. It is an administrative area
where you can manage content and configuration based on the extensions that are
installed.

The frontend is the **content-delivery** side. Typically a website, it is the
meeting point for templates, CSS, content, and logic from extensions,
delivering your project to the world.
The frontend doesn't have to be a website, it can be a native mobile
application, a web application built in a frontend framework, or an API to
interface with other systems.
