---
title: "Create your own extension"
manual: "Getting Started"
version: "14.3"
permalink: "https://docs.typo3.org/permalink/t3start:create-own-extension@14.3"
source: "Extensions/CreateOwnExtension.rst"
rendered: "2026-10-01T16:42:59+00:00"
---

# Create your own extension {#create-own-extension}

In TYPO3, extensions allow you to expand the system’s functionality by
adding new features and customizing behavior according to your project's needs.

## Prerequisites {#create-own-extension-prerequisites}

-   A working [TYPO3 installation](https://docs.typo3.org/permalink/t3start:installation-ddev-tutorial@14.3)
    using Composer.
-   Familiarity with Composer
-   Basic knowledge of PHP and TYPO3 development concepts
-   CLI access to your TYPO3 instance

## Why create an extension? {#why-create-extension}

Creating an extension allows you to:

-   Add custom features and modules to TYPO3
-   Share functionality across multiple TYPO3 instances

## How to start developing an extension {#how-to-create-extension}

Developing an extension involves several steps, from setting up the extension
structure to implementing your custom functionality.
To guide you through this process, TYPO3 provides a detailed tutorial on
extension development.

Please refer to this [link](https://docs.typo3.org/m/typo3/reference-coreapi/14.3/en-us/ExtensionArchitecture/Tutorials/Index.html#extension-tutorials) for
comprehensive, step-by-step instructions on how to create an extension.

## Basic steps to create an extension {#basic-steps}

-   Define the purpose of your extension.

    Determine what specific functionality or feature you want to add to TYPO3
-   Create the extension skeleton

    Set up the basic structure for your extension.
-   Implement the desired features

    Add the necessary PHP classes, TypoScript configuration and templates
    that will bring your extension's functionality to life.
-   Register the extension in TYPO3

    Register your extension so TYPO3 can recognize it. This includes adding it
    to your instance's configuration.
-   Test and refine

    Test your extension to ensure it works as expected and make any needed
    adjustments.
