A Global Design System
TL;DR: This is a call to action to create a Global Design System that provides the world’s web designers & developers a library of common UI components. A Global Design System would improve the quality and accessibility of the world’s web experiences, save the world’s web designers and developer

If you're wondering where the fuse was lit

I think HTML is great. It's a set of components, some may call it a "system," that we all use on a "global" scale to create, some may say "design," websites…

Ok, I'm sorry for being crass. But I do mean it when I profess my enjoyment of using HTML. I guess that's why I'm quite attached to the idea of it being regarded as our beloved "Global Design System," its shortcomings are just a cry for it to grow.

Despite the differing perspectives, it's nice to see Web Components surfacing as an agreed delivery method. Of course, I'm on board with this as well.

Thoughts on a Global Design System
Dave and I just had Brad on ShopTalk Show to talk about his idea for a Global Design System. I love Brad’s optimism on all this. From Brad’s perspective, he’s seen, and helped bui…

Chris raising concerns, as well as considering Web Components

Web Components as HTML patches

I guess my perspective differs from others in how this proposed design system interacts with HTML and front-end work in general. HTML is the "ready for production" components, and Web Components are the "in draft" components. The best depiction of this I've seen was when Dave Rupert worked on HTML tabs as part of Open UI:

Let’s talk about Native HTML Tabs
For the past year I’ve been on a team of folks inside Open UI dedicated to figuring out how get a native, accessible <tabs> element into HTML. We’re a team of people with varying backgrounds; spec authors, browser vendors, implementors, and normie practitioners like myself. Open UI is a community group so we can’t technically make HTML (for legal reasons), but we can present research to the W3C working groups. I see Open UI as an ad hoc research arm for the W3C with specific experience in design systems and common web componentry.

Feels like the ideal lifecycle of a new component should be the following:

  1. Component idea proposed and discussed (maybe within Open UI)
  2. Component prototyped into a Web Component for iterative development
  3. Component is in draft status but has been adopted in the developer community; call it a public beta
  4. A native HTML counterpart is proposed
  5. Component and HTML element(s) eventually meet in the middle on design
  6. Component gracefully deprecates (goodnight, sweet prince) or return to step 5

Brad did a follow-up on his post, which was actually a reply to Chris Coyier's slight skepticism of the concept. This seems much more in line with what I'm thinking. It's not lost on me that Brad has more experience than I do, which might be why we have different perspectives on how quickly the HTML spec would pick up new elements. Whatever they're drinking on the CSS Working Group should be shared with the HTML spec (kidding, they have very different purposes).

Maybe I'm being too naive, or idealistic, or both. I'm glad smarter people than myself are thinking more deeply about this stuff, such as Brian Kardell:

927: Thoughts on a Global Design System
My thoughts on “A Global Design System” as is being discussed in OpenUI.

Regardless of perspectives, I'm definitely interested in contributing. Consider this post as my digital hat being thrown into the ring 🧢👋🏻