---
title: "Quickstart: From zero to a basic website in TYPO3 v14"
manual: "Getting Started"
version: "main"
permalink: "https://docs.typo3.org/permalink/t3start:quickstart@main"
source: "Quickstart/Index.rst"
rendered: "2026-09-29T15:48:45+00:00"
---

# Quickstart: From zero to a basic website in TYPO3 v14 {#quickstart}

<!-- TODO: no Markdown rendering for "versionadded" -->

The default theme "Camino" was introduced with TYPO3 14.1.This tutorial does not work with earlier TYPO3 versions.

In this quickstart tutorial, we demonstrate how to install TYPO3 and set up a
basic website using the default theme "Camino".

-   [Installing TYPO3 v14 (short version)](https://docs.typo3.org/permalink/t3start:installing-typo3-v14-short-version@main)
-   [TYPO3 v14 backend overview](https://docs.typo3.org/permalink/t3start:typo3-v14-backend-overview@main)
-   [Adding content to your website](https://docs.typo3.org/permalink/t3start:adding-content-to-your-website@main)
-   [Adding subpages](https://docs.typo3.org/permalink/t3start:adding-subpages@main)
-   [Configuring the default theme (Camino)](https://docs.typo3.org/permalink/t3start:configuring-the-default-theme-camino@main)
-   [Customizing the default theme (Camino)](https://docs.typo3.org/permalink/t3start:customizing-the-default-theme-camino@main)

## Installing TYPO3 v14 (short version) {#quickstart-installation}

To follow these steps, you need either Docker and DDEV for local development
([Installing and using DDEV](https://docs.typo3.org/permalink/t3start:ddev@main))
or a Linux system with a web server (Apache or Nginx), a database,
[Composer](https://getcomposer.org/), and at least PHP 8.2.

(See also the [system requirements](https://docs.typo3.org/permalink/t3start:system-requirements@main).)

**DDEV**

**/var/www/$ (DDEV)**

```bash
# Create project directory
mkdir my_project && cd my_project

# Initialize DDEV project
ddev config --php-version 8.4 --docroot public --project-type typo3

# Start DDEV
ddev start

# Install TYPO3 via Composer
ddev composer create-project "typo3/cms-base-distribution:^14"
# Recommended: Require the default theme
ddev composer req typo3/theme-camino
# Run TYPO3 CLI setup (database credentials are pre-filled)
ddev typo3 setup --server-type=other --driver=mysqli --host=db --port=3306 --dbname=db --username=db --password=db --create-site <siteurl>

# Open the Backend login in a browser
ddev launch /typo3/

```

**Linux**

**/var/www/$ (Linux)**

```bash
# Create project directory
mkdir my_project && cd my_project

# Use at least php 8.2 and create a mysql or mariadb database

# Install TYPO3 via Composer
composer create-project "typo3/cms-base-distribution:^14"

# Run TYPO3 CLI setup
# Replace example.org with your own domain
vendor/bin/typo3 setup --create-site https://example.org

```

The directory in which you run these commands must be empty.
Do not initialize Git or open the folder in an IDE before running the
commands, as the installation process expects no pre-existing files.

> [!NOTE]
> **See also**
>
> There are multiple strategies to install TYPO3 depending on your needs:
>
> -   [Step-by-step: TYPO3 Installation with DDEV](https://docs.typo3.org/permalink/t3start:installation-ddev-tutorial@main)
> -   [TYPO3 installation overview](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/Administration/Installation/Index.html#installation_index)
> -   [Classic TYPO3 demo installation using Docker Compose](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/Administration/Docker/DockerComposeDemo/Index.html#docker-compose-typo3)
>     (Docker only, no DDEV or Composer required)

## TYPO3 v14 backend overview {#quickstart-backend}

Open the TYPO3 backend ([Backend login](https://docs.typo3.org/permalink/t3start:backend-login@main))
using the credentials you entered during installation.

Open the backend URL of your installation, for example
`https://my-site.ddev.site/typo3` when using DDEV.

You should see something like the following:

![Screenshot of the backend of a fresh TYPO3 v14.1 installation, with the system information window open](../Images/ManualScreenshots/Quickstart/backend.png)

If you see an error message instead, see
[Troubleshooting](https://docs.typo3.org/permalink/t3start:troubleshooting-index@main).

## Adding content to your website {#quickstart-content}

If you selected the default site preset during installation,
a basic website should have been created.

![Screenshot of the "Layout" module, containing the automatically created page](../Images/ManualScreenshots/Quickstart/content_module.png)

If no root page was created during setup, you will need to
[create a page on root level](https://docs.typo3.org/permalink/t3start:create-root-page-new-page@main)
and
[configure it](https://docs.typo3.org/permalink/t3start:create-root-page-configure@main).

You will also need to [edit the site configuration](https://docs.typo3.org/permalink/t3start:edit-site-configuration@main)
in order to add the "Theme:Camino" site set.

![Frontend screenshot of a website using the default theme "Camino" with text "Welcome to your default website"](../Images/ManualScreenshots/Theme/NewSite.png)

![Screenshot of the content editor including a rich text editor with markup options](../Images/ManualScreenshots/Quickstart/content_module.png)

The [TYPO3 Editors Guide](https://docs.typo3.org/m/typo3/tutorial-editors/main/en-us/Index.html#start)
provides detailed information on how to work with content.

## Adding subpages {#quickstart-pages}

In the page tree, you can add new pages via drag and drop:

![Screenshot of the page tree while a new standard page is added via drag and drop](../Images/ManualScreenshots/Quickstart/page_adding.png)

![Screenshot of the page tree showing a newly added page being enabled](../Images/ManualScreenshots/Quickstart/page_enable.png)

In the default theme (Camino), a main menu is displayed automatically when you
add pages below the root page.

Some editors prefer pages to be visible immediately. You can configure this
behavior via page TSconfig:
[Example: Do not hide newly created pages by default](https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/PageTsconfig/TcaDefaults.html#pageTsTcaDefaults-example).

## Configuring the default theme (Camino) {#quickstart-configure-theme}

In the module **Sites > Setup**, you can edit the site configuration
and settings:

![Screenshot of the "Sites > Setup" module in overview](../Images/ManualScreenshots/Quickstart/site_setup.png)

> [!NOTE]
> **See also**
>
> -   [Site configuration](https://docs.typo3.org/permalink/t3start:edit-site-configuration@main)
> -   [Site settings](https://docs.typo3.org/permalink/t3start:settings-site-settings@main)
> -   [Customizing the Camino theme](https://docs.typo3.org/c/typo3/theme-camino/main/en-us/Customize/Index.html#customizing-camino)

In the site settings, you can change settings provided by the theme and
installed extensions. You may need to [clear the caches](https://docs.typo3.org/permalink/t3start:how-to-clear-cache@main)
to apply changes.

![Screenshot of the site settings, changing the theme default settings](../Images/ManualScreenshots/Quickstart/site_setup.png)

![Screenshot of the backend toolbar with button "Clear cache" and option "Flush frontend caches"](../Images/ManualScreenshots/Quickstart/site_setup.png)

## Customizing the default theme (Camino) {#quickstart-customize-theme}

The files belonging to the default theme can be found in the folder
`vendor/typo3/theme-camino` in Composer mode, or in
`typo3/sysext/theme_camino` in Classic mode installations.

> [!WARNING]
> Even if it technically works: Do not change files in the `vendor/typo3`
> directory. Changes will be lost with the next update.

If you want to modify the theme but continue using it, you can either copy it
and edit the copy, or create a custom site package that extends Camino.

### Edit a copy of the default theme {#quickstart-customize-copy}

If you copy the theme and modify the copy, future changes to the
original theme will not be applied to your customized version.

Copy the default theme:

**Composer mode**

**/var/www/site/$ (Composer mode)**

```bash
cp -R vendor/typo3/theme-camino/ packages/theme-camino
ddev composer req typo3/theme-camino:"@dev"

```

**Classic mode**

**/var/www/site/$ (Classic mode)**

```bash
cp -R vendor/typo3/theme-camino/ typo3conf/ext/theme_camino
typo3/sysext/core/bin/typo3 cache:flush

```

![Screenshot of module "System > Extensions"](../Images/ManualScreenshots/Quickstart/site_setup.png)

You can now edit files in this new location, for example CSS files in
`packages/theme-camino/Resources/Public/Css`.

### Extend the default theme {#quickstart-customize-extend}

You can use the development extension [`friendsoftypo3/kickstarter`](https://packagist.org/packages/friendsoftypo3/kickstarter)
to create a custom theme that extends the default theme:

**/var/www/site/$**

```bash
ddev composer req friendsoftypo3/kickstarter

ddev typo3 make:extension
# [...]
# Composer package name:
#  > myvendor/theme_pluto

Keep the default values for all other questions.

ddev typo3 make:site-set

# Please enter the site set identifier (must be "myvendor/theme_pluto" or "myvendor/theme_pluto-<suffix>") [myvendor/theme_pluto]:
#  >
# [...]
#
# Enter site set identifiers for dependencies (press Enter with empty input to finish).
#
#  Dependency (vendor/package):
#  > typo3/theme-camino

```

Edit the newly created `packages/theme_pluto/composer.json` and update
the `require` section to add [`typo3/theme-camino`](https://packagist.org/packages/typo3/theme-camino):

**packages/theme_pluto/composer.json**

```diff
 "require": {
     "typo3/cms-core": "^14",
+    "typo3/theme-camino": "^14"
 },
```

Then require the new theme using its Composer name, for example:

```bash
ddev composer req myvendor/theme-pluto:@dev
```

You can now create a file
`packages/theme_pluto/Configuration/Sets/theme_pluto/setup.typoscript`
to override the default theme’s TypoScript and add additional paths for templates
and custom CSS styles and/or JavaScript files:

**packages/theme_pluto/Configuration/Sets/theme_pluto/setup.typoscript**

```typoscript
# Override page templates, use UNIX timestamp so your template is loaded last
lib.fluidPage {
    paths.1770975481 = EXT:theme_pluto/Resources/Private/Templates/
}

page {
    includeCSS {
        theme_pluto_styles = EXT:theme_pluto/Resources/Public/Css/styles.css
    }
    includeJS {
        theme_pluto_hello = EXT:theme_pluto/Resources/Public/JavaScript/hello.js
    }
}

# Override content element templates, use UNIX timestamp so your template is loaded last
lib.contentElement {
    layoutRootPaths.1770975481 = EXT:theme_pluto/Resources/Private/Templates/Layouts/
    partialRootPaths.1770975481 = EXT:theme_pluto/Resources/Private/Templates/Partials/
    templateRootPaths.1770975481 = EXT:theme_pluto/Resources/Private/Templates/Content/
}

```

Now add the new theme as a dependency in the site configuration:

![Screenshot of site settings section "Sets for this Site" with the new theme selected](../Images/ManualScreenshots/Quickstart/activate_local_theme.png)

You can now copy any Fluid template, partial, or layout from the folder
`vendor/typo3/theme-camino/Resources/Private/Templates` into
`packages/theme_pluto/Resources/Private/Templates` and override it.

> [!NOTE]
> **See also**
>
> -   [TypoScript Explained](https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html#start)
> -   [Fluid ViewHelper Reference](https://docs.typo3.org/other/typo3/view-helper-reference/main/en-us/Index.html#start)
> -   If you want an individual theme not based on the default theme, see
>     [TYPO3 site package tutorial](https://docs.typo3.org/m/typo3/tutorial-sitepackage/main/en-us/Index.html#start)
