Development
If you want to participate in the development of the Extension Builder, set up your local development environment as usual.
Build tooling
The JavaScript sources are bundled with Vite. To install dependencies and build the frontend assets, run:
npm install
npm run build
The compiled output is written to Resources/.
Linting
Code style is enforced by ESLint (JavaScript), Stylelint (SCSS) and Prettier (formatting). Run all linters in one step:
npm run lint
Individual linters can be invoked separately:
npm run lint:js # ESLint
npm run lint:scss # Stylelint
npm run lint:format # Prettier (check only)
To automatically fix formatting issues:
npm run format
E2E tests
End-to-end tests are written with Playwright and require the ddev environment to be running:
ddev start
npm run test:e2e
To open the interactive Playwright UI:
npm run test:e2e:ui
To run tests in a headed browser:
npm run test:e2e:headed
PHP tests
PHP unit and functional tests use PHPUnit 10 and TYPO3 Testing Framework ^7.
Run unit tests:
composer unit-tests
Run functional tests (uses SQLite, no database setup required):
composer functional-tests
Run all checks (PHP CS Fixer, unit tests, functional tests):
composer test
Rector
For automated code migrations, TYPO3 Rector is integrated. Run it with:
vendor/bin/rector
– The TYPO3 project - Inspiring people to share