Lock Frames or Variants to specific Token Set Combinations or Themes #3178
Labels
🩵 Migrated to Featurebase
Archive this issue and head to featurebase to follow
💡request
Community feedback
Is your feature request related to a problem? Please describe
I’m currently facing a challenge with maintaining a Design System for a responsive website. The Design System consists of many components. Each component can have different styling depending on the viewport width. For example the font-size of a paragraph on a small viewport is 16px while on a large viewport it is 20px.
Each component has three Token Sets (component-name-small-vw, component-name-medium-vw and component-name-large-vw). I am using a mobile-first approach so the small-vw set containers all base styling such as font-family and colors. By applying different sets on an instance of a component I can control the appearance. The Design System contains documentation and examples for use-cases on each viewport size.
However, applying global changes - like font-family or color updates - becomes cumbersome when instances of components are styled using a combination of token sets for specific viewports. Global updates (Apply to document) affect all instances, regardless of the applied token sets or themes, leading to unintended changes. This makes it difficult to efficiently update and manage larger design systems where many components and pages are involved.
Another challenge is the steep learning curve for designers who use the design system as a library but are unfamiliar with the Tokens Studio Plugin. Ideally, I’d like to simplify their workflow by avoiding the need for them to use the plugin.
Describe the solution you'd like
I would like to request the ability to pin frames or component variants to a specific combination of token sets or theme in Tokens Studio for Figma. This feature would allow for more controlled updates when global changes are applied. For example, by pinning a frame to a specific token set or theme, I could ensure that global token updates (such as changes to font-family) on the entire document are applied without overriding instances styled with a different token set combination.
Additionally, this feature could simplify the workflow for design system consumers who may not need to interact with Tokens Studio directly when using this feature in combination with Viewport Width Variants on the components.
Describe alternatives you've considered
Currently, I have explored two approaches:
Neither solution fully resolves the issue of efficient global updates without affecting viewport-specific instances of components, and both approaches require extensive manual intervention when managing larger design systems.
Additional context
This feature would greatly enhance the usability and scalability of design systems using Tokens Studio for Figma, especially for teams that need to manage responsive components across multiple viewport widths. Introducing a pinning mechanism for Frames or Variants provide more control over global updates and reduce the complexity for design system consumers.
I’d love to hear feedback from others in the community and explore additional solutions or workarounds. Thank you!
The text was updated successfully, but these errors were encountered: