The Official TYPO3 Introduction Package 

Extension key

introduction

Package name

typo3/cms-introduction

Version

main

Language

en

Author

TYPO3 Core Team & Contributors

License

This document is published under the Open Content License.

Rendered

Thu, 13 Aug 2026 17:37:13 +0000


This extension is a carefully crafted TYPO3 distribution giving you a small insight in the powerful toolbox of the TYPO3 CMS framework.

It comes with a full-fledged website based on Benjamin Kott's Bootstrap Package and Twitter Bootstrap, with simple options to customize the base theme.


Table of Contents:

Introduction 

Basic idea 

This carefully crafted extension gives you a small insight in the powerful toolbox of the TYPO3 CMS framework.

It comes with a full-fledged website, delivering a theme based on Twitter bootstrap with simple options to modify the base theme.

Credits & Source 

Source code and issue tracker of the introduction extension can be found on github

Kudos to all contributors, and especially:

  • Benjamin Kott for the large part of developing this extension
  • Sven Wolfermann for the first version of the package
  • Ben van't Ende and Mathias Schreiber for kicking butts

Installation 

TYPO3 download based instance 

If you downloaded and unpacked a full TYPO3 core from get.typo3.org, just install the system as usual. In the last installation step you can select the option Yes, download the list of distributions. On first backend login, you will be redirected to the extension manager "Get preconfigured distribution" and can install the "The Official TYPO3 Introduction Package" with one click.

If you want to test the distribution in an existing instance, just select the extension manager in the backend, go to "Get preconfigured distribution" and select "The Official TYPO3 Introduction Package".

Note the extension can be unloaded and removed from the system after initial import, all business code is within the bootstrap_package extension that comes along with the introduction extension, all required content data is loaded into the database and required files are put into fileadmin/introduction upon first installation.

Composer based instance 

If you base your TYPO3 instance on a modern Composer based installation, just require the package via Composer:

composer require typo3/cms-introduction
Copied!

Since TYPO3 11.5 it is essential to setup the extension afterwards by running the following command:

composer exec typo3 extension:setup
Copied!

For older core versions go to the backend extension manager and activate the extension in "Installed Extensions".

Removal 

To remove the package from the instance, the following steps are needed:

  • Unload extensions "introduction" and "bootstrap_package"
  • Delete the two extension in the extension manager
  • Remove the page tree starting with root page "Congratulations"
  • Remove all files from fileadmin/introduction using the backend Filelist module
  • (Optional) If you want to re-install ext:introduction on an instance that had ext:introduction loaded before, the data import is only performed if you (manually) remove the keys marked with extensionDataImport in column entry_namespace from database table sys_registry that are related to the introduction paths. Note it is often easier to just install TYPO3 from scratch if you just want to play around.

Maintenance 

The basic setup of ext:introduction and distributions in general is described in the TYPO3 Core API. It is a good idea to read this as an introduction to the concept of distributions.

General restrictions 

The extension is created in a way that as soon as the data import (files & db) has been performed by a user, the extension can be unloaded and removed from the system. This should be kept. It means that all relevant data needs to either reside in fileadmin/introduction or in the database. No code should link to EXT:introduction/... .

The extension is based on ext:bootstrap_package which brings the main site setup. Dealing with ext:introduction thus means dealing only with the content - pages, tt_content, assets and so on.

Maintenance with DDEV 

A DDEV Local configuration is included with this repository to simplify the maintenance. A TYPO3 instance will be setup automatically while starting the project by running ddev start. To login to the Backend or Install Tool afterwards use the following credentials:

  • User: admin
  • Password: Password!1

Reset the project 

To reset the project to a clean state run ddev reset which will remove the database and the previously installed TYPO3 instance. All other files in the repository will stay untouched.

Test the project 

To start the tests locally run ddev run-tests which will remove the database and the previously installed TYPO3 instance and sets up a fresh instance. For more information about the available options run ddev run-tests --help.

Render the documentation 

After changes to the documentation it can be rendered locally by running ddev render-docs and will be available through the browser at https://docs.introduction.typo3.ddev.local.

Content administration 

To prepare and change existing content, a series of steps is required to end up with a clean data export:

  • Install a fresh and empty TYPO3 core, easiest way is to clone current core master and composer install
  • Install base system, select "Do nothing, just get me to the Backend." in last installer step
  • Go to extension manager "Get Extensions" and let it fetch the full extension list. This is needed for the ext:bootstrap_package requirement.
  • Clone ext:introduction to typo3conf/ext/
  • Go back to extension manager "Installed Extensions" and load ext:introduction . This will install all current content and assets.
  • Do your content munging, execute update wizards, do whatever is needed. Keep core version constraints in mind if you do something that is specific for some core versions. Continue with data export. Keep in mind to only use files that reside in fileadmin/introduction. Keep an eye on file size. If possible, the extension should stay below 10MB after export.

Update data export 

The distribution data handling is based on core extension ext:impexp . The extension manager will use that extension for data import upon loading ext:introduction . There are three main areas:

  • Initialisation/data.xml - All main DB data. pages, tt_content and so on
  • Initialisation/data.xml.files/ - All assets reference in content elements. Only files from within fileadmin/introduction should be in there. A reference outside of this fileadmin sub folder is not allowed. Check this during export.
  • Initialisation/Files/ - Contains files that will be copied to fileadmin/introduction. Only files not directly referenced by content elements should be in here, since those referenced files come with Initialisation/data.xml.files/. Do not blindly copy everything. Examples for good-to-go files in here are a couple of logos that are used in TypoScript templates, and a default ext:form contact form .yml file.

Step by step export guide:

  • After content administration is done, select "More -> Export" on the root page "Congratulations"
  • Load the "Introduction Package" preset
  • Check the exported data does NOT contain backend users, especially not the user you are currently logged in with
  • Update the preset if it had to be changed.
  • Perform the export
  • Copy or move fileadmin/user_upload/_temp_/importexport/data.xml to ext:introduction/Initialisation/data.xml
  • Delete directory ext:introduction/Initialisation/data.xml.files
  • Move directory fileadmin/user_upload/_temp_/importexport/data.xml.files/ to ext:introduction/Initialisation/data.xml.files
  • Verify if ext:introduction/Initialisation/Files/ needs updates
  • Move the entire extension to some safe place and perform a full new test installation on a blank system as outlined in distribution testing. Verify content is displayed as expected and all files are displayed and rendered. If not, repeat steps above.
  • Commit code changes to github or create pull request.

Release 

Prerequisites 

Tailor requires an API access token to get the job done. The token must be provided as GitHub secret TYPO3_API_ACCESS_TOKEN before creating a new release. See Actions secrets to manage the secrets.

The extension owner is the user "typo3v4".

TODO: the automatic token refresh is planed. Currently the token expires after a maximum of 12 months. When in doubt please update the token before creating a new release.

Create a Release 

  • Adapt TYPO3 core & other dependencies if needed in ext_emconf.php and composer.json. Push changes.
  • The version number in ext_emconf.php is managed by the release script, you don't have to touch it anymore!
  • On GitHub head to Actions -> Create Release where you can find a button Run workflow with a dropdown menu. Choose the desired branch to create a release and run the workflow. As long as you don't fill the Mode field with publish no changes are written to the repository and you are able to check the drafted release before doing the final release including the deployment to TER.

Fix failed TER upload 

In case the upload to TER failed in the release workflow head to Actions -> Publish Release and start the workflow by providing a previously created tag. The Mode works in the same way like for creating a release.

Sitemap