Figuring out how to use the Composer package manager to handle your project's dependencies can be a bit tricky. Using the Drupal Composer Project as a starting point provides you with an opinionated (and Drupal-aware) starting point. This project provides help with many of the common initial project setup tasks including the installation of tools like Drush and Drupal Console, as well as setting the correct file permissions required to actually install Drupal.
Note: As of Drupal 8.8.0, the recommended Composer template is the "officially supported" drupal/recommended-project. There are other popular "templates" for starting a new Drupal application with Composer, including drupal-composer/drupal-project. You can find the full list in Using Composer to manage Drupal site dependencies on Drupal.org.
- Use a common scaffold tool for new project setup
- Leverage Composer to manage all of the dependencies of the codebase
- Start each new project with the most recent Drush and Drupal Console versions ready to go
- Manage the Drupal core update process more easily
The Drupal Composer project provided a stop-gap in managing Drupal sites with Composer for most of Drupal 8's lifecycle. While this project still exists and may be used, the Drupal project now provides its own "recommended-project" Composer template which is the current recommendation for setting up Drupal sites for development.