Problem/Motivation

'Site templates' was announced at DrupalCon by Dries, however there is not yet an actual definition of what they are. They will probably consist of a site-level recipe, theme, and default content. I think there's also a likelihood that they'll want to be able to do some of the same things that distributions currently do etc.

Although we don't have a full definition of what they are yet, I think we know what they're not - e.g. they won't be pre-recipe install profiles, so there should be various things we can do in core to make the install and potentially development process for site templates easier, parallel to them being finalised.

I don't think this is the issue to define what site templates will actually be, that should be its own dedicated issue somewhere else, can link from here once it exists.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Comments

catch created an issue. See original summary.

catch’s picture

Added a couple of child issues.

Version: 11.x-dev » main

Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

Read more in the announcement.

phenaproxima’s picture

We have a pretty settled definition of what a site template is now.

Site template support in core could take the form of "here is a form that lets you choose from a set of recipes that are discovered in some way".

phenaproxima’s picture

I have a proposal here.

Drupal CMS's installer includes a dedicated form to show a selection of site templates, from which you can choose one: https://git.drupalcode.org/project/drupal_cms/-/blob/2.x/drupal_cms_inst...

Could we maybe port this form, or some variation of it, into core? This could be a simple form that scans the local filesystem for site templates (which always have type: Site in recipe.yml) and displays a simple set of radio buttons. When one is chosen, ?recipe=path/to/site/template is added to the current URL (via $install_state['parameters']), which is already supported.

We wouldn't necessarily need to expose the form in the installer -- at least not yet -- but Drupal CMS would readily take advantage of this core feature.

catch’s picture