DrupalCon Los Angeles 2015: Composer Tools and Frameworks for Drupal

Composer is the de-facto php dependency management tool of the future. An ever-increasing number of useful open-source libraries are available for easy use via Packagist, the standard repository manager for Composer. As more and more Drupal contrib modules begin to depend on external libraries from Packagist, the motivation to use Composer to manage grows stronger; since Drupal 8 Core, and Drush 7 are now also using Composer to manage dependencies, the best way to insure that all of the requirements are resolved correctly is to manage everything from a top-level project composer.json file.

In this session, we will examine the different ways that Composer can be used to manage your project code, and how these new practices will influence how you use Drush and deploy code. The following open source tools will be examined:

Drupal Packagist

Drupal Tangler

Drupal Project

Drupal Library Installer

Composer Patches Plugin

Composer Generate

Each tool and how they interact will be explained, and differences between Composer usage on Drupal 7 and Drupal 8 will be examined. Once the theoretical foundation is laid, we will show how the Drupal 7 Framework can be used to pull together a collection of these tools to create a local Vagrant-based Drupal 7 development environment. The common workflows of adding a custom module, installing a new module or theme, adding a library, applying a patch, performing updates, and deploying will also be discussed.

Drupal is a registered trademark of Dries Buytaert.