This recipe is designed to help start a highly configured Drupal project.
Rather than one large Recipe that tries to do everything, we've broken it up into multiple sub-recipes. This recipe installs them all, but you can also install the sub-recipes on their own (Once this Drupal issue is resolved.).
- kanopi/gin-admin-experience
- kanopi/saplings-base
- kanopi/saplings-editorial
- kanopi/saplings-launch
- kanopi/saplings-tests [Cypress]
- kanopi/saplings-content-types
Apply a recipe to Drupal installed with a minimal profile. See below is you want to set up a quick testing environment.
- Follow the instructions in kanopi/drupal-starter to start a new project as it is configured for recipes and tooling needed.
- Run
fin composer require kanopi/saplings:^1
to require this repository. - Run
fin recipe-apply saplings
to apply this recipe. - Run the following command to unpack the dependencies from all kanopi/saplings recipes to the site project's composer.json file.
fin recipe-unpack kanopi/saplings && fin recipe-unpack kanopi/gin-admin-experience && fin recipe-unpack kanopi/saplings-base && fin recipe-unpack kanopi/saplings-editorial && fin recipe-unpack kanopi/saplings-launch && fin recipe-unpack kanopi/saplings-content-types && fin recipe-unpack kanopi/saplings-component-types && fin recipe-unpack kanopi/saplings-component-base && fin recipe-unpack kanopi/saplings-content-base && fin recipe-unpack kanopi/saplings-media && fin recipe-unpack kanopi/imagemagick-configuration && fin recipe-unpack kanopi/saplings-theme && fin recipe-unpack kanopi/saplings-editorial
- Export configuration.
You can then remove the recipe once it has been applied and unpacked as the configuration is now in your Drupal, and the dependencies are in your composer.
fin composer remove kanopi/saplings
- Export configuration.
Feature complete.
- Break Page and Post Content types into their own recipes.
- Additional components as needed.
- kanopi/saplings-ai - [WIP] Helpful AI functionality for content creators.
- kanopi/saplings-person - [WIP] Creates a Person content type and related configuration.
- kanopi/saplings-events - [WIP] Configuration for Saplings Events
- kanopi/saplings-demo-events - [WIP] Demo content for Saplings Events
- kanopi/solr-search-pantheon-recipe - The goal is to configure Solr for Pantheon on a site that isn't going to use saplings.
Investigate extending Drupal CMS' recipes.
- kanopi/saplings-domain - Installs and configures Domain modules.
- kanopi/saplings-demo-content - Demo content for Saplings.
- kanopi/saplings-solr - Configures a back-end and front-end Solr search customized for Saplings on Pantheon.
- kanopi/password-policy-90-days - Installs and configures Password Policy and sets a 90 day expiration default.
- kanopi/remote-video-youtube-lite - Configures Remote Video Media entity to use Lite YouTube Embed.
- kanopi/saplings_navbar - Creates a navbar pattern for Saplings that allows the parent to be a link and then have a dropdown indicator to access child menu items.
We'd love your help with testing, ideation, and development.
Decide on a name for your testing environment. In this example, I will use kanland
.
- Checkout kanopi/drupal-starter into it's own repo.
git clone git@github.com:kanopi/drupal-starter.git kanland && cd kanland
- Open /.docksal/docksal.env in your editor.
- Update row 28
hostingsite="kanland"
and save. - Run
fin init
- The build will fail with the following message as we haven't installed Drupal yet.
Error: Class "Drupal\user\Entity\User" not found
- Run
fin drush si minimal -y && fin drush uli
to install Drupal and log in. - Click on the one-time-login to verify the minimal install happened.
- Require this repository:
fin composer require kanopi/saplings:^1
- Apply the recipe:
fin recipe-apply saplings
To reset after you have done some testing:
- Run
fin init
- The build will fail with the following message as we haven't installed Drupal yet.
Error: Class "Drupal\user\Entity\User" not found
- Run
fin drush si minimal -y && fin drush uli
to install Drupal and log in.
Use composer the require the recipes needed. We currently host on our packagist.
To apply contrib/composer installed recipes, run the following commands:
fin recipe-apply recipe-name
Each recipe can have composer dependencies. "Unpacking" takes these dependencies from the recipe and applies them to the project's composer.json file.
To unpack contrib/composer installed recipes, run the following commands:
fin recipe-unpack recipe-name
Note: The Drupal core patch is experimental, but it is mainly additions. If you don't want to have that on your production site, the good news is that you don't have to have patch after you've applied and unpacked your recipes. You can simply remove the patch and update core as the recipes are now yours.
Created using JBZoo/Composer-Graph