danielsiepmann / tracking
Tracking for TYPO3
Installs: 23 885
Dependents: 0
Suggesters: 0
Security: 0
Stars: 17
Watchers: 5
Forks: 2
Open Issues: 8
Type:typo3-cms-extension
Requires
- php: ~8.1.0 || ~8.2.0 || ~8.3.0
- ext-mbstring: *
- doctrine/dbal: ^2.12 || ^3.3 || ^4.0
- psr/http-message: ^1.0
- psr/http-server-handler: ^1.0
- psr/http-server-middleware: ^1.0
- symfony/console: ^5.2 || ^6.1 || ^7.0
- symfony/expression-language: ^5.2 || ^6.1 || ^7.0
- typo3/cms-backend: ^12.4 || ^13.4
- typo3/cms-core: ^12.4 || ^13.4
- typo3/cms-dashboard: ^12.4 || ^13.4
Requires (Dev)
- codappix/typo3-php-datasets: ^1.5
- cweagans/composer-patches: ^1.7
- friendsofphp/php-cs-fixer: ^3.14
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.5
- saschaegerer/phpstan-typo3: ^1.10
- typo3/testing-framework: ^8.0.9
README
About
This extension was made to demonstrate technical features of TYPO3. Since v1.0.0 it is also available on packagist and intended for usage on production systems.
The following features should be demonstrated:
- PSR-4 Autoloading Standard
- Use composer.json to provide autoloading information. Classes will be loaded when needed. No need for require statements.
- PSR-12 Extended Coding Style Guide
- Current stable Coding Style Guide, applied via Coding Sniffer.
- PSR-7 HTTP Message Interface
- Also known as Request Response, used to create tracking information from incoming request.
- PSR-11 Container Interface
- Also known as Dependency Injection. Used to resolve external dependencies, e.g. foreign classes. Existing TYPO3 factories are used to build QueryBuilder instances. Also DI is "misused" to provide configuration for dashboard widgets and tracking.
- PSR-15 HTTP Handlers
- Also known as middlewares. Used to hook into processing to create tracking information.
- PSR-14 Event Dispatcher
- Not in use yet.
- EXT:dashboard
- Used to visualize collected tracking information.
Thanks
Thanks to our supporters:
- Icons
- Generated by https://www.werkraum-media.de/
- Partly sponsored code by
- https://www.werkraum-media.de/
Example
The following widgets are added and could look like:
A new record is added which looks like: