A skeleton for SilverStripe modules.
A useful skeleton to more easily create modules that conform to the Module Standard.
This readme contains descriptions of the parts of this module base you should customise to meet you own module needs. For example, the module name in the H1 above should be you own module name, and the description text you are reading now is where you should provide a good short explanation of what your module does.
Where possible we have included default text that can be included as is into your module and indicated in other places where you need to customise it
Below is a template of the sections of your readme.md you should ideally include to met the Module Standard and help others make use of your modules.
Please note: This module is designed to be a "vendor module". If you need to use it as a non-vendor module, you will need to adjust the import paths for silverstripe/admin JS and SCSS loaders.
- SilverStripe ^4.0
- Yarn, NodeJS and npm (for building frontend assets)
- Other module
- Other server requirement
Add some installation instructions here, having a 1 line composer copy and paste is useful. Here is a composer command to create a new module project. Ensure you read the 'publishing a module' guide and update your module's composer.json to designate your code as a SilverStripe module.
composer require robbieaverill/silverstripe-module 2.x-dev
Note: When you have completed your module, submit it to Packagist or add it as a VCS repository to your project's composer.json, pointing to the private repository URL.
We have included a 3-clause BSD license you can use as a default. We advocate for the BSD license as it is one of the most permissive and open licenses.
Add links into your docs/ folder here unless your module only requires minimal documentation in that case, add here and remove the docs folder. You might use this as a quick table of content if you mhave multiple documentation pages.
If your module makes use of the config API in SilverStripe it's a good idea to provide an example config here that will get the module working out of the box and expose the user to the possible configuration options.
Provide a yaml code example where possible.
Page: config_option: true another_config: - item1 - item2
Bugs are tracked in the issues section of this repository. Before submitting an issue please read over existing issues to ensure yours is unique.
If the issue does look like a new bug:
- Create a new issue
- Describe the steps required to reproduce your issue, and the expected outcome. Unit tests, screenshots and screencasts can help here.
- Describe your environment as detailed as possible: SilverStripe version, Browser, PHP version, Operating System, any installed SilverStripe modules.
Please report security issues to the module maintainers directly. Please don't file security issues in the bugtracker.
If you would like to make contributions to the module please ensure you raise a pull request and discuss with the module maintainers.