Andrew's Digital Garden

Design system contributions

Both facilitating design system contributions and contributing to design systems is hard. By the nature of a system, there are many interconnected parts, domain knowledge, and context required to make large changes. What starts off as a simple addition can balloon into a much bigger problem as different components can be trying to achieve the same purpose. [[20230116121916-design-system-purpose]]

Keep in mind there are different scales of contribution. A bug fix is a smaller scale task than a new component or feature. It's also a much more common task. Cater your contribution models towards these different types of work. Don't funnel all work into a catch-all rigmarole that requires lots of boilerplate and may even disincentivise making any scale of contribution. Larger tasks may require more hand-holding and formality. Smaller tasks may be best done in the moment, with minimal guidance.

Anecdotally the smaller scale updates are much easier to facilitate. They don't require as much context nor systems thinking. That translates to less time in design, less time in engineering, and less hand-holding.

Remember to define what a 'contribution' is too. There's a fine line between contributions and participation (or collaboration). That being said, don't forget to celebrate the latter. Although it may not be exactly your definition of contribution, having other members offer ideas, use cases, problems, etc all helps inform a better design system.

https://uxdesign.cc/design-systems-why-contribution-models-are-tricky-to-get-right-1c4d13f72b5c https://medium.com/wayfair-design/contributing-to-our-design-system-at-wayfair-46fb5593e207 https://medium.com/eightshapes-llc/defining-design-system-contributions-eb48e00e8898

[[20231003043826-design-system-contributions-steward]]

[[adoption]] [[designsystem]]

Design system contributions