lochmueller / autoloader
Automatic components loading of ExtBase extensions to get more time for coffee in the company ;) This ext is not a PHP SPL autoloader or class loader - it is better! Loads CommandController, Xclass, Hooks, FlexForms, Slots, TypoScript, TypeConverter, BackendLayouts and take care of createing needed
Package info
github.com/lochmueller/autoloader
Type:typo3-cms-extension
pkg:composer/lochmueller/autoloader
Requires
- php: ^7.4||^8.0
- typo3/cms-core: ^10.4.6||^11.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpstan/phpstan: ^1.2
- rector/rector: ^0.12.9
- scrutinizer/ocular: ^1.3
- typo3/testing-framework: ^6.2
Replaces
- typo3-ter/autoloader: 7.4.6
This package is auto-updated.
Last update: 2026-06-11 14:19:49 UTC
README
Autoloader: Swiss Knife for Developers
Autoloader speeds up your development cycle - more time for coffee!
Autoloader Annotations
/** * @DatabaseTable(tableName="") * @DatabaseKey([key=""|argumentName=""]) * @DatabaseField(type=""[, sql=""]) * * @EnableRichText([value=""|argumentName=""]) * @Hook(locations={}) * @NoCache([value=""|argumentName=""]) * @NoHeader([value=""|argumentName=""]) * @ParentClass(parentClass="") * @Plugin([value=""|argumentName=""]) * @RecordType(recordType="") * @SignalClass([value=""|argumentName=""]) * @SignalName([value=""|argumentName=""]) * @SignalPriority([value=""|argumentName=""]) * @SmartExclude(excludes="{}") * @WizardTab(config="") * */
Working Examples
We drop the examples in EXT:autoloader. Please check other extensions tht use autoloader as example (EXT:calendarize)
Example for a SmartObject (Only one of the features)
ext_tables.php
\HDNET\Autoloader\Loader::extTables( 'vendorName', 'extensionKey', [ 'SmartObjects', 'TcaFiles' ] );
ext_localconf.php
\HDNET\Autoloader\Loader::extLocalconf( 'vendorName', 'extensionKey' [ 'SmartObjects', 'TcaFiles' ] );
Test.php
namespace vendorName\extensionKey\Domain\Model; use HDNET\Autoloader\Annotation\DatabaseField; use HDNET\Autoloader\Annotation\DatabaseTable; use TYPO3\CMS\Extbase\DomainObject\AbstractEntity; /** * Create a test-table for this model with this annotation. * @DatabaseTable(tableName="test") */ class Test extends AbstractEntity { /** * A basic field * * @var string * @DatabaseField(type="string") */ protected $textField; /** * A boolean field * * @var bool * @DatabaseField(type="bool") */ protected $boolField; /** * File example * * @var \TYPO3\CMS\Extbase\Domain\Model\FileReference * @DatabaseField(type="string") */ protected $file; /** * Custom (variable that has a custom DB type) * * @var int * @DatabaseField(type="int", sql="int(11) DEFAULT '0' NOT NULL") */ protected $customField; // add here some Getters and Setters }