Skip to content

Commit 64bbb74

Browse files
committed
Add Design Tokens concept doc
1 parent 3ff9e2d commit 64bbb74

3 files changed

Lines changed: 65 additions & 2 deletions

File tree

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
Design Tokens
2+
#############
3+
4+
What are Design Tokens?
5+
***********************
6+
7+
Design tokens are all the values needed to build and maintain a design system —
8+
spacing, color, typography, object styles, etc. They can represent anything
9+
defined by the design: color as an RGB value, opacity as a number, spacing as a
10+
REM value. They are used instead of hard-coded values to provide flexibility and
11+
uniformity across the application.
12+
13+
By defining style properties as tokens, we can transform the styles into various
14+
implementations compatible with different platforms or formats (e.g.,
15+
transforming tokens to CSS variables, CSS utility classes, and eventually
16+
mobile).
17+
18+
Paragon uses `style-dictionary <https://github.com/style-dictionary/style-dictionary>`_ to build design tokens into CSS variables.
19+
20+
Background & Motivation
21+
***********************
22+
23+
Design tokens debuted as the primary theming mechanism in the Ulmo release (January 2026), and was available for beta testing in the Open edX Teak release (June 2025).
24+
25+
.. warning::
26+
27+
There will be no overlap between the old SCSS-variable theming system and Design Tokens. Site operators must prepare migration strategies in advance.
28+
29+
**Background reading:**
30+
31+
* `Scaling Paragon's styles architecture with design tokens (Confluence) <https://openedx.atlassian.net/wiki/spaces/BPL/pages/3630923811/Scaling+Paragon+s+styles+architecture+with+design+tokens>`_
32+
* `ADR: design tokens implementation in Paragon <https://github.com/openedx/paragon/blob/master/docs/decisions/0019-scaling-styles-with-design-tokens.rst>`_
33+
* `November 2024 Open edX meetup presentation slides <https://docs.google.com/presentation/d/1FOSbTUTbbzaBoIDYMa5s32in1uFoYWdoQ-GjKk5IRBo/edit?usp=sharing>`_
34+
* `Teak design tokens wiki (includes test branches) <https://openedx.atlassian.net/wiki/spaces/BPL/pages/5050499077/Using+Teak+Design+Tokens+branches>`_
35+
36+
Reference Links
37+
***************
38+
39+
* :ref:`Release note (Ulmo) <Ulmo Design Tokens>`
40+
* `Paragon tokens source (release-23.x) <https://github.com/openedx/paragon/tree/release-23.x/tokens>`_
41+
* `Paragon README: Design Tokens section <https://github.com/openedx/paragon/tree/release-23.x?tab=readme-ov-file#design-tokens>`_
42+
* `brand-openedx (interface definition) <https://github.com/openedx/brand-openedx>`_
43+
* `brand-openedx: design tokens how-to <https://github.com/openedx/brand-openedx/blob/main/docs/how-to/design-tokens-support.rst>`_
44+
* `sample-plugin/brand (purple example) <https://github.com/openedx/sample-plugin/tree/main/brand>`_
45+
* `elm-theme (production example) <https://github.com/edx/elm-theme>`_
46+
* `tutor-contrib-paragon <https://github.com/openedx/openedx-tutor-plugins/tree/main/plugins/tutor-contrib-paragon>`_
47+
* `frontend-platform theming docs <https://github.com/openedx/frontend-platform/blob/master/docs/how_tos/theming.md>`_
48+
* :ref:`OEP-0048: Brand Customization <openedx-proposals:OEP-48 Brand Customization>`
49+
* `style-dictionary docs <https://amzn.github.io/style-dictionary/#/>`_
50+
* `W3C Design Tokens Community Group spec <https://tr.designtokens.org/format/#abstract>`_
51+
* `Confluence: Background/motivation <https://openedx.atlassian.net/wiki/spaces/BPL/pages/3630923811/Scaling+Paragon+s+styles+architecture+with+design+tokens>`_
52+
* `Confluence: Teak test branches <https://openedx.atlassian.net/wiki/spaces/BPL/pages/5050499077/Using+Teak+Design+Tokens+branches>`_
53+
* `Paragon design tokens issues <https://github.com/openedx/paragon/issues?q=design+tokens>`_
54+
* `Paragon CLI issues <https://github.com/openedx/paragon/issues?q=%5BCLI%5D>`_
55+
56+
57+
**Maintenance chart**
58+
59+
+--------------+-------------------------------+----------------+--------------------------------+
60+
| Review Date | Working Group Reviewer | Release |Test situation |
61+
+--------------+-------------------------------+----------------+--------------------------------+
62+
| 2026-03-20 | Frontend WG | Verawood | Pass |
63+
+--------------+-------------------------------+----------------+--------------------------------+

source/developers/concepts/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Concepts Home
22
#############
33

44
.. toctree::
5-
:maxdepth: 2
5+
:maxdepth: 1
66
:glob:
77

88
*

source/developers/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Open edX Developers
2929
* :ref:`qs Dev Contributing`
3030
* :ref:`Tutor QS (Dev)`
3131
* :doc:`references/running_pr_tests`
32-
* :doc:`concepts/hooks_extension_framework`
32+
* :doc:`concepts/design_tokens`
3333

3434
.. grid-item-card:: How-tos
3535
:class-card: sd-shadow-md sd-p-2

0 commit comments

Comments
 (0)