b13 / make
Kickstarter CLI tool for various TYPO3 functionalities
Installs: 121 749
Dependents: 1
Suggesters: 0
Security: 0
Stars: 44
Watchers: 13
Forks: 11
Open Issues: 10
Type:typo3-cms-extension
Requires
- typo3/cms-core: ^10.0 || ^11.0 || ^12.0 || ^13.0
Requires (Dev)
- phpstan/phpstan: ^1.4
- typo3/cms-core: ^11.5
- typo3/coding-standards: ^0.5
- typo3/tailor: ^1.4
- typo3/testing-framework: ^7.0
README
This TYPO3 extension allows to easily kickstart new TYPO3 extensions and components, such as Middlewares, Commands or Event listeners, by using an intuitive CLI approach.
TYPO3 Explained offers an extended tutorial on how to Kickstart a TYPO3 Extension with Make.
Installation
Install this extension as "dev" dependency via composer req b13/make --dev
.
You can also download the extension from the TYPO3 Extension Repository and activate it in the Extension Manager of your TYPO3 installation.
Note: This extension is compatible with TYPO3 v10, v11, v12 and v13 and should only be used in development context. So please make sure it is excluded for production releases.
Usage
All components, including new extensions, can be created with
a dedicated command, executed on CLI with the typo3
binary:
bin/typo3 make:<component_name>
.
Example for creating a new extension:
bin/typo3 make:extension
All commands are interactive, which means you have to configure the extension or component by answering the displayed questions. Most of them automatically suggest a best practice default value, e.g. for identifiers or namespaces, which can just be confirmed.
It's also possible to customize those default values using environment
variables with the B13_MAKE_
prefix. The full list is shown below:
B13_MAKE_BACKEND_CONTROLLER_DIR
- Default directory for backend controllersB13_MAKE_BACKEND_CONTROLLER_PREFIX
- Default prefix for the backend controllers' route identifierB13_MAKE_COMMAND_DIR
- Default directory for commandsB13_MAKE_COMMAND_NAME_PREFIX
- Default prefix for commandsB13_MAKE_EVENT_LISTENER_DIR
- Default directory for event listenersB13_MAKE_EVENT_LISTENER_IDENTIFIER_PREFIX
- Default identifier prefix for event listenersB13_MAKE_EXTENSION_DIR
- Default directory for extensionsB13_MAKE_MIDDLEWARE_DIR
- Default directory for middlewaresB13_MAKE_MIDDLEWARE_IDENTIFIER_PREFIX
- Default identifier prefix for middlewaresB13_MAKE_MIDDLEWARE_TYPE
- Default context type for middlewares
All component related commands require an extension name, for which the
component should be created. This can also be set as first argument or
globally with the B13_MAKE_EXTENSION_KEY
environment variable.
Commands
Following commands are available
make:backendcontroller
- Create a new backend controllermake:command
- Create a new commandmake:eventlistener
- Create a new event listenermake:extension
- Create a new extensionmake:middleware
- Create a new middleware
Credits
This extension was created by Oliver Bartsch in 2021 for b13 GmbH, Stuttgart.
Find more TYPO3 extensions we have developed that help us deliver value in client projects. As part of the way we work, we focus on testing and best practices ensuring long-term performance, reliability, and results in all our code.