In this weeks class on How to Build a Website with Backdrop CMS, we talked about contributed modules for Backdrop CMS, what is available and how to select the right module to suit your needs. Here are some notes from this weeks class.
Some useful definitions:
Backdrop CMS core - Backdrop CMS core is what you get when you download Backdrop CMS directly from BackdropCMS.org without adding any contributed modules, layouts, or themes. The base Backdrop package, without modifications, is referred to as Backdrop CMS core.
Modules - Modules are distinct packages of code that provide Backdrop CMS with specific and distinct features or functionality. One is able to add or remove features from Backdrop CMS by enabling or disabling specific modules. Backdrop CMS core comes with a wide variety of modules that provide Backdrop with it's default functionality. Not all core modules are enabled by default. Some core modules that are enabled can be safely disabled if the user does not need the functionality that they provide.
Contributed Modules - Contributed modules are modules that are NOT included in Backdrop CMS core. Contributed modules can be found on BackdropCMS.org, then downloaded and enabled to add specific functionality to your Backdrop CMS site. Contributed modules for Backdrop CMS are not officially supported by the Backdrop CMS core team, rather they are created and supported by individual members of the Backdrop CMS community. Any member of the Backdrop CMS community may report bugs and submit pull requests against a contributed modules, to help improve the module, add functionality, and fix bugs. However, the individual maintainer for each contributed module is responsible for accepting or rejecting changes to their modules.
The first place to look for contributed modules is on BackdropCMS.org at: https://backdropcms.org/modules. This is a full list of all of the modules available for Backdrop with stabile releases. If you are looking for a module and willing to risk testing or experimenting with a contributed module that might not have a full release, you can find even more modules in the contrib repository for Backdrop CMS at: https://github.com/backdrop-ops/contrib.
Sometimes there is more than one module that might provide the specific functionality that you are looking for. Here are some tips on selecting a contributed module to meet your needs. These are all things to think about, but none of these items should be considered in isolation when evaluating a module.
- Start by search BackdropCMS.org and finding any modules that might suit your needs. Be sure to read the description and check to see if there are links to any additional documentation.
- Check the number of installations on the module page. As of this writing, the Backdrop CMS community is still small enough that a module with 50+ installations is probably pretty well tested. As of this writing, the most popular module is Backup and Migrate with 409 installations. You can view of list of all the modules and their current installation statistics at: https://backdropcms.org/project/usage. Modules with only a few installation are less well tested and more likely to be unstable or buggy.
- Check the maintainer of your module and if possible, look for names that you recognize as active in the Backdrop community. Some individuals have ported or created 25+ modules and can be reliably counted on to maintain and update their modules. Other modules might have been the sole contribution of an individual that has since left the Backdrop CMS community and is not longer actively supporting their module.
- Check the date of the most recent release, to see how recently the module has been updated. An update within the six months is a good sign.
- If you are unable to recognize the name of the maintainer or are uncertain of how actively maintained a module is, check the Github issue queue for the module. You can find a link to the Github issue queue on every modules BackdropCMS.org page. Check to see if there are any outstanding issues that might shed light on the status of the module or to see how frequently the module maintainer has been responding to issues and/or updating the module. Some modules are updated frequently and others go for years without any support. NOTE: A lack of activity on a module is not necessarily a bad thing. If it's a relatively simple module, it might simply mean that the module works very well and has not had any issues or needed any attention.
- Backdrop CMS has a number of Drupal 7 modules built into Backdrop CMS core. The same functionality in Drupal 7 required the installation of many contributed modules. Other popular modules for Drupal 7 have been ported to Backdrop CMS. A list of the top 100 modules for Drupal and their status in Backdrop can be found at: https://backdropcms.org/upgrade-from-drupal/top-100-drupal-7-modules
You can find a list of stabile modules for Backdrop CMS on BackdropCMS.org - https://backdropcms.org/modules. The Github repositories for Backdrop CMS modules can be found here,
During class today, we discussed a number of videos on the Backdrop CMS Youtube channel. Of specific interest would be
- Virtual User Group: Contrib Modules
- Virtual User Group: Porting a Drupal 7 Theme to Backdrop CMS
- Virtual User Group: Creating Themes and Front End Development