Where to start
Drupal is a CMS, and its primary feature is to allow non-technical users to insert, edit, and manage complex editorial content using a web interface (the administration interface). Content can then be shown to end users in multiple ways. Starting from Drupal 8, the system is API-frst, and can be used as the backend in a headless architecture. But, out of the box, Drupal renders its content as HTML pages (we’ll refer to this as the frontend throughout the rest of the book).
This double behavior is possible thanks to the high level of decoupling between where the content is built in Drupal core and where it is converted into HTML for the final output. The layer that converts content into HTML is called the theme layer.
Drupal allows users to choose different themes for both the administration and frontend interfaces.
Themes are hierarchical, where a child theme can extend or alter its parent theme, adding new CSS, replacing HTML templates, or changing the...