- Introduction
- Development Branch Naming & Workflow
- What comes with Whiplash?
- Requirements
- Installation
Whiplash contains an installation profile that allows developers to quickly start a Drupal site. It includes reasonable defaults with stability, security, and the content authoring experience in mind.
- Always create Feature and Bugfix branches from the
main
branch. - When needed, create Hotfix branches from
main
. - Merge, or submit a Pull Request, from Feature/Bugfix/Hotfix branches to
develop
. - Submit a Pull Request from Feature/Bugfix branches to current pre-release branch
1.x
. - Submit a Pull Request from Hotfix branches to
main
. - Submit a Pull Request from
1.x
tomain
for all regular releases.
Whiplash comes with the following common modules installed via Composer dependencies. For more information on the modules please follow the links provided below.
Address
Admin Toolbar
Allowed Formats
CKEditor Anchor Link
CKEditor IndentBlock
Components
Configuration Split
Config Direct Save
Contact Storage
Devel
Diff
Entityqueue
Facets
Field Group
Focal Point
GoogleTagManager
Inline Entity Form
Libraries API
Login History
MaxLength
Metatag
Paragraphs
Password Policy
Pathauto
Rabbit Hole
Redirect
Save & Edit
Search API
Simple XML sitemap
Twig Field Value
Twig Tweak
Username Enumeration Prevention
Configuration occurs during site installation but can be modified and added to as needed. Config Split and Config Direct Save are included to allow for different configuration per environment and to make syncing configuration easier during development.
Your development and hosting environments must be capable of running Drupal 9. See Drupal's system requirements.
This project assumes that Gesso will be used as the default theme.
Whiplash needs to be installed and updated using Composer and assumes that your project includes Drupal core.
DDEV is recommended for local development.
The drupal project template is recommended as a starting point. You can also refer to whiplash demo for an example of how to use the drupal project with whiplash as a profile.
Once you have a starting point for development that includes Composer and Drupal core, include the necessary source repositories. The source repository section should look like:
"repositories": [
{
"type": "composer",
"url": "https://packages.drupal.org/8"
},
{
"type": "vcs",
"url": "https://github.com/forumone/whiplash"
},
{
"type": "package",
"package": {
"name": "ckeditor/indentblock",
"version": "4.11.4",
"type": "drupal-library",
"dist": {
"url": "https://download.ckeditor.com/indentblock/releases/indentblock_4.11.4.zip",
"type": "zip"
},
"require": {
"composer/installers": "^1.2.0"
}
}
},
{
"type": "package",
"package": {
"name": "ckeditor/fakeobjects",
"version": "4.11.4",
"type": "drupal-library",
"dist": {
"url": "https://download.ckeditor.com/fakeobjects/releases/fakeobjects_4.11.4.zip",
"type": "zip"
},
"require": {
"composer/installers": "~1.0"
}
}
},
{
"type": "package",
"package": {
"name": "ckeditor/link",
"version": "4.11.4",
"type": "drupal-library",
"dist": {
"url": "https://download.ckeditor.com/link/releases/link_4.11.4.zip",
"type": "zip"
},
"require": {
"composer/installers": "~1.0"
}
}
}
],
If you are using drupal project as a starting point make sure to remove any duplicated dependencies in the composer.json. The require section in your composer.json should look similar to:
"require": {
"php": ">=7.3",
"composer/installers": "^1.10",
"cweagans/composer-patches": "^1.7",
"drupal/core-composer-scaffold": "^9",
"drupal/core-recommended": "^9",
"drupal/core-vendor-hardening": "^9",
"drush/drush": "^9.7.1 | ^10.0.0",
"joachim-n/composer-manifest": "^1",
"rvtraveller/qs-composer-installer": "^1.2",
"vlucas/phpdotenv": "^4.0",
"webmozart/path-util": "^2.3"
},
Install Whiplash as a composer dependency
ddev composer require forumone/whiplash
Install Drupal
ddev drush si whiplash -y