We have made Drupal 8 in many ways a lot better experience for themers and then completely thrown them under the bus by forcing them to write a config schema. Config schema is weird even to module developers much less themers.

Proposed resolution

  1. Create a settings.yml with the defaults inside in one of the core themes. I'd recommend stark.
  2. Tell themers to copy this and add their own settings.
  3. Provide a script that derives a schema from the settings yml (reusing the theme_settings type as necessary).

Remaining tasks

Agree, code, commit, party.

User interface changes


API changes



sun’s picture

Adding one closely related issue that happened to touch this topic already + another one that tries to sum up the total TX pain.

FWIW, due to the first issue, themes no longer have to supply a config schema (as long as they do not introduce custom settings).

xjm’s picture

alexpott’s picture

Priority: Critical » Normal

If a theme does not have custom settings it's config with be covered by the theme_settings type in core.data_types.schema.yml - no need to write a schema - therefore downgrading.

I'm all for tools to help people write schema.

lauriii’s picture

Version: 8.0.x-dev » 8.1.x-dev
Status: Active » Postponed
joelpittet’s picture

Status: Postponed » Active
Issue tags: +CMI, +TX (Themer Experience)

CR that needs a bit of updating in this regard:

joelpittet’s picture

Stubbed a page in the Theme Guide as we didn't have one yet for D8.

markcarver’s picture

Status: Active » Closed (duplicate)
Related issues: +#2382671: Automatically define schema for themes
joelpittet’s picture

@markcarver thanks, I'll move my comment over there.