dwenzel / t3extension-tools
Tools for TYPO3 CMS extensions
Installs: 33 828
Dependents: 3
Suggesters: 0
Security: 0
Stars: 3
Watchers: 3
Forks: 2
Open Issues: 0
Type:typo3-cms-extension
Requires
- php: >=8.3
- helhum/typo3-console: ^8.2
- symfony/finder: ^5.4 || ^6.0 || ^7.1
- typo3/cms-backend: ^12.4 || ^13.4
- typo3/cms-core: ^12.4
- typo3/cms-install: ^12.4 || ^13.4
Requires (Dev)
- armin/editorconfig-cli: ^2.0
- ergebnis/composer-normalize: ^2.45
- mikey179/vfsstream: ^1.6
- phpstan/phpstan: 1.12 || ^2.1
- phpunit/phpunit: ^10.5 || ^11.2 || ^12.1
- roave/security-advisories: dev-latest
- ssch/typo3-rector: ^2.14 || ^3.5
- typo3/coding-standards: ^0.8.0
- typo3/testing-framework: ^7.0 || ^8.0 || ^9.2
README
Provide tools for extensions of the TYPO3 CMS
Installation
composer require dwenzel/t3extension-tools
Note: This extension will be updated in TYPO3 Extension Repository sporadically only. Use the latest composer version instead.
Features
- register plugins
- YAML-based plugin configuration for simplified setup
- Class-based plugin configuration for advanced use cases
- register modules
- configure tables
- allow tables on standard pages
- add localized description for tables (context sensitive help)
- register bitmap and SVG icons
- load TypoScript and PageTS config
- use interfaces and traits for console commands
Caveats
Make sure, no other extension is extending TYPO3\CMS\Extbase\Service\ExtensionService
.
If an extending class is registered via TypoScript it will be found at
config.tx_extbase.objects.TYPO3\CMS\Extbase\Service\ExtensionService.className
.
Development
Testing
This extension comes with a comprehensive test suite. You can run the tests with the following commands:
# Run unit tests composer test:unit # Run functional tests composer test:functional # Run static analysis composer test:phpstan # Run all tests composer test
GitHub Workflows
The following GitHub workflows are configured for this extension:
- Tests: Runs unit tests on both TYPO3 v12 and v13
- Static Analysis: Performs static analysis using PHPStan