mautic / core-project-message
Adds a message after Composer installation.
Installs: 52 393
Dependents: 2
Suggesters: 0
Security: 0
Stars: 3
Watchers: 6
Forks: 2
Open Issues: 0
Type:composer-plugin
Requires
- php: >=7.3.0
- composer-plugin-api: ^1.1 || ^2
README
Thanks for using this Mautic component.
You can participate in its development on Mautic.org, through our issue system: https://www.mautic.org
You can get the full Mautic repo here: https://www.mautic.org
What does it do?
This Composer plugin displays a configurable message after Composer installation processes have finished.
This is ideal for a 'next steps' type prompt to help get the user oriented.
Currently only two Composer events are supported:
- post-create-project-cmd, when a
composer create-project
command has finished. - post-install-cmd, when a
composer install
command has finished.
How do I set it up?
Require this Composer plugin in your project template composer.json file:
"require": {
"Mautic/core-project-message": "^8.8"
}
Configuration
There are three ways to configure this plugin to output information:
- Using a text file.
- Using composer.json schema keys.
- Embedding the information in the extra section of the composer.json file.
Using a text file
By default, the plugin will respond to post-install-cmd
or
post-create-project-cmd
Composer events by looking for a similarly-named file
in the root of the project. For instance, if the user issues a composer create-project
command, when that command is finished, the plugin will look for
a file named post-create-project-cmd-message.txt
and then display it on the
command line.
The file should be plain text, with markup suitable for Symfony's
OutputInterface::writeln()
method. See documentation here:
https://symfony.com/doc/3.4/console/coloring.html
You can also configure your own file(s), using the extra
section of your
composer.json file:
"extra": {
"Mautic-core-project-message": {
"post-create-project-cmd-file": "bespoke/special_file.txt"
}
}
Using composer.json schema keys
You can tell the plugin to output the structured support information from the composer.json file by telling it the keys you wish to display.
Currently, only name
, description
, homepage
and support
are supported.
"extra": {
"Mautic-core-project-message": {
"include-keys": ["homepage", "support"],
}
}
Then you can include this information in your composer.json file, which you should probably be doing anyway.
Embedding the information in the extra section
You can specify text directly within the extra
section by using the
[event-name]-message
key. This message should be an array, with one string for
each line:
"extra": {
"Mautic-core-project-message": {
"post-create-project-cmd-message": [
"Thanks for installing this project.",
"Please visit our documentation here: http://example.com/docs"
]
}
}
These strings should be plain text, with markup suitable for Symfony's
OutputInterface::writeln()
method. See documentation here:
https://symfony.com/doc/3.4/console/coloring.html
The -message
section will always override -file
for a given event.