Bundling site settings using Features
The Features module offers a well-known method of bundling configuration in a new module that can be installed on other sites--a feature.
The configuration management system in Drupal 8 focuses on the use case of staging configuration from one instance to another of a given site--for example, from a development instance to a testing instance or from testing to production.
Features focus on the complimentary use case of sharing configuration among multiple sites.
If someone asks you how to make a blog on a Drupal site, you tell them that a blog is easily made with custom content types, fields, and Views – and some settings that would cover 2–3 pages of fine print.
Features module shortcuts the work with configuring settings by providing comfortable means for bundling, exporting and importing settings for many of the most used Drupal modules. Features shift the site development paradigm from the tweak here and there into enabling features.
The main advantages
- Newcomers to Drupal can quickly deploy a blog, an image gallery and a bunch of other features, while still being able to peek into the fine-print settings.
- Developers can easily reuse settings in some of the most used modules, including Views, Panels, Context, and more.
NOTE: Drupal 7 sitebuilders and developers may also find benefit in using the following modules in conjunction with Features:
"Features Extra" module: https://www.drupal.org/project/features_extra - can be used to featurize blocks
"UUID Features" module: https://www.drupal.org/project/uuid_features - can be used to featurize nodes of content, taxonomy terms
"Diff" module: https://www.drupal.org/project/diff - when used with features, provides line-by-line diff between feature states/versions.
Tangentially (not a features supplement, but similar) Drupal 7 sitebuilders and developers may also find benefit in using:
"Webform Share" module: https://www.drupal.org/project/webform_share [intended only for webform 7.x-4.x, useful for porting entire webform node, components, settings between Drupal instances]