SproutCMS is a flexible and feature rich cms and application framework, developed in PHP, designed to enable quick and agile custom development. SproutCMS was built to reward innovation and encourage developers to produce complex applications. It is built by developers, for developers.
This a module template project for Sprout 4. It provides a sample module as a Composer package to be loaded into your Sprout project.
This module is actually functional and serves as the Demo module for the sproutcms/site project.
Install it and see for yourself:
composer create-project sproutcms/site
composer serve
composer create-project sproutcms/module my-module
Now update the composer.json
file:
- Update the package name
- Update (or remove) description + keywords
- Update the license (optional)
- Update the namespace (also in each php file)
- Update the package name (and in
DemoModule::getVersion()
)
Install this into your project by publishing the package or with a local or VCS repository:
{
"repositories": [{
"type": "vcs",
"url": "https://github.com/user/my-module"
}]
}
This tool will symlink sibling folders as package into a project. This is great for fast development across multiple packages. The config lives inside the composer file extra.locals
.
It's possible to house more than one Sprout module in the same Composer package. One can configure multiple namespaces or simply create multiple module classes.