# Usage ## Preparation - [Install composer](https://getcomposer.org): `sudo wget https://getcomposer.org/composer.phar --output-document=/usr/local/bin/composer && sudo chmod +x /usr/local/bin/composer` - Disable XDebug for CLI - optional: `sudo phpdismod -s cli xdebug` - [Install Prestissimo](https://github.com/hirak/prestissimo) - optional: `sudo composer global require "hirak/prestissimo:^0.3"` ## Create new project for local development ```bash composer create-project lakedrops/d9-project [DIRNAME] --no-interaction cd [DIRNAME] ``` This will build the full structure and create a git repository which you can then use during the full live-cycle of that project. To install a new site with the included default configuration, use `drush site-install --existing-config` and you get a jump-start from that. ## Deploy project to upstream stages For deployment, both initially and for later updates, follow this: ``` mkdir /PATH/TO/ROOT cd /PATH/TO/ROOT git clone YOUR-GIT-REPOSITORY . composer install ``` ## Adding new and updating existing components Edit the composer.json file accodring to your requirements and then run `composer update`. ## Adding JS packages ### CKEditor Codesnippet ```bash composer config repositories.codesnippet '{"type": "package","package": {"name": "ckeditorplugin/codesnippet","type": "drupal-library","version": "master","dist": {"type": "zip","url": "https://download.ckeditor.com/codesnippet/releases/codesnippet_4.7.3.zip","reference": "master"}}}' composer require ckeditorplugin/codesnippet:master drupal/codesnippet ``` ### Chosen ```bash composer config repositories.codesnippet '{"type": "package","package": {"name": "harvesthq/chosen","version": "1.8.2","type": "drupal-library","dist": {"url": "https://github.com/harvesthq/chosen/releases/download/v1.8.2/chosen_v1.8.2.zip","type": "zip"}}}' composer require harvesthq/chosen ``` # Links [Using Composer to install Drupal packages through Drupal.org](https://www.drupal.org/node/2718229)