Skip to content

Composer

Drupal 9 uses composer as dependency manager.

Naming Convention

Projects(Modules, themes, profiles) must use the package name.

drupal/SUBPROJECT

where SUBPROJECT is the machine name of the module, theme or profile.

Components

Drupal projects may also contain custom components (like PHP libraries). As those components are not bound to any namespace, they are likely to conflict with a given Drupal project, module, theme,

Therefore , Package names must be prefixed with their parent's name and a dash (-), in the case it will use the drupal/ vendor.

drupal/PARENT-COMPONENT

where PARENT is the name of the parent package and COMPONENT a sufficient name for the component.

Examples

  • Datetime becomes drupal/core-datetime
  • Diff becomes drupal/core-diff