I want to use composer with my future Drupal projects. I installed Composer on my machine and I noticed two packages (drupal/drupal and drupal-composer/drupal-project). When I install the second package, I get a warning message telling that there is no stable version.

What are the difference between those two package?
Is it composer enough for Drupal, or should I use Drush with it?


This is the main repository for the Drupal project and is used to generate the tarball which is available for download on Drupal.org. This package is not used (directly) if you are using Composer to manage your codebase.


This is a subtree split of drupal/drupal repository which contains everything in the parent repo's /core directory. This is the package that is used if you are using Composer to manage your codebase.


This is a "scaffold" project and serves as a starting point for your root composer.json file. This package isn't maintained by the Drupal Association, but it has become the de facto standard for assembling a Drupal codebase with Composer. It does a few things:

  1. It brings in the drupal/core package and couple other requirements needed to assemble and run a Drupal site (composer/installers, cweagans/composer-patches) and a few nice-to-haves (drupal/console, webflo/drupal-finder, ...).

  2. In addition to the packages listed above, it requires the drupal-composer/drupal-scaffold package which is responsible for assembling all the stuff normally provided as part of the tarball that's needed to run a Drupal site that lives outside of the /core directory (index.php, update.php, etc).

  3. Contains instructions for composer/installers that tells Composer where to put stuff like modules and profiles.

  4. Defines the Drupal-specific packagist repository.

Typically, you don't require or clone scaffold projects. They are intended to be used as starting points for projects of your own. You would use the create-project command instead:

composer create-project drupal-composer/drupal-project

There are other scaffold projects out there with more opinions or different focuses (BLT, Drupal CI) and most D8 Distributions provide a scaffold project (Open Social, Lightning, Thunder, etc)


The difference, as I understand it, is that the first one is a root name that the Composer.JSON uses to install a new Drupal project, and the second is a Composer command for the actual installation of a new Drupal project (can be useful in companies where new projects come in a fast manner).

  • drupal-composer/drupal-project is not an official build.
    – Eyal
    Jan 16 '16 at 22:38
  • As @Eyal said, I noticed that drupal-composer/drupal-project is not being stable yet.
    – learner123
    Jan 17 '16 at 14:53
  • Not official? It is listet in the docs without mentioning any grave confines like no stable versions... It sucks!
    – TNT
    Jul 2 '17 at 18:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.