Skip to content

Design System API

Author: Shibin Das (d34dman)Last updated

In review

Reviewers: open, join #3627995 on drupal.org

Design System API gives Drupal a shared design contract that themes implement and modules build against. Modules use semantic design tokens and pattern specs instead of theme-specific CSS, so their UI looks and behaves consistently under any theme that implements the contract, and acceptably under themes that don't, thanks to built-in defaults.

Built on core's Design Tokens API (W3C DTCG format) and Single Directory Components. Framework-agnostic: works for Twig, vanilla JS and islands in any framework.

Experimental, pre-alpha

The contract vocabulary will change while it is developed together with theme maintainers. Do not build production code on it yet.

Start here

  • At a glance: the problem, the idea, what exists today and what needs direction, in five minutes.
  • Concept: the position, the modernization stance, the domain model, layering, phasing, and the open questions with current leanings.
  • Builds on: the core issues, contrib projects and standards this work continues, with how it relates to each.
  • Prior art: what already exists, starting with Drupal: where the related core and contrib work stands, and what each part means for the module's design.
  • Try the demo: a Drupal 11.5 site with the module and the Media Library pilot, set up with DDEV in three commands (repository).
  • Reviews: short briefs for maintainers of the areas the project touches, each with the questions we need answered and a link to its issue.