frommeandClaude Opus 5.5 9347112d6b refactor: private instead of protected where nothing relies on it, constructor promotion
Members (properties, methods, constants) become private when they are
declared in the class itself, no parent class or interface declares them,
no ancestor in packages/ uses them and the class has no subclass in
packages/: 115 members in 36 files. Extbase domain objects keep protected
properties, AbstractDomainObject sets them from the parent class.

With the properties private, Rector's constructor promotion now also
applies to the controllers and services that still assigned their
dependencies by hand (26 files).

Checked locally: frontend crawl (~1,900 URLs) and the backchannel APIs
render the same as before.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 11:05:45 +01:00
2026-10-25 14:47:49 +01:00
2026-10-25 14:47:49 +01:00
2026-10-21 13:24:40 +02:00

TYPO3 CMS Base Distribution

Get going quickly with TYPO3 CMS.

Prerequisites

Quickstart

  • composer create-project typo3/cms-base-distribution project-name ^13
  • cd project-name

Note that this distribution installs most, but not all of the TYPO3 CMS core extensions. Depending on your need you might also want to install other TYPO3 extensions from packagist.org.

Setup

To start an interactive installation, you can do so by executing the following command and then follow the wizard:

composer exec typo3 setup

Setup unattended (optional)

If you're a more advanced user, you might want to leverage the unattended installation. To do this, you need to execute the following command and substitute the arguments with your own environment configuration.

export TYPO3_SETUP_ADMIN_PASSWORD=$(tr -dc "_A-Za-z0-9#=$()/" < /dev/urandom | head -c24)
composer exec -- typo3 setup \
    --no-interaction \
    --server-type=other \
    --driver=sqlite \
    --admin-username=admin \
    --admin-email="[email protected]" \
    --project-name="My TYPO3 Project" \
    --create-site="http://localhost:8000/"
echo "Admin password: ${TYPO3_SETUP_ADMIN_PASSWORD}"

Development server

While it's advised to use a more sophisticated web server such as Apache 2 or Nginx, you can instantly run the project by using PHPs` built-in web server.

Please be aware that the built-in web server is single threaded and only meant to be used for development.

Next steps

License

GPL-2.0 or later

S
Description
No description provided
Readme GPL-2.0
2.7 MiB
0 Stars 4 Watchers 0 Forks
Languages
JavaScript 41.2%
PHP 35.4%
HTML 22.3%
SCSS 0.9%
Shell 0.2%