Design systems

Talking about scaling design can get very confusing very quickly. There are a bunch of terms that get thrown around: design systems, pattern libraries, style guides, and components.

The generally-accepted definition of a design system is that it’s the outer circle—it encompasses pattern libraries, style guides, and any other artefacts. But there’s something more. Just because you have a collection of design patterns doesn’t mean you have a design system. A system is a framework. It’s a rulebook. It’s what tells you how those patterns work together.

This is something that Cennydd mentioned recently:

Here’s my thing with the modularisation trend in design: where’s the gestalt?

In my mind, the design system is the gestalt. But Cennydd is absolutely right to express concern—I think a lot of people are collecting patterns and calling the resulting collection a design system. No. That’s a pattern library. You still need to have a framework for how to use those patterns.

I understand the urge to fixate on patterns. They’re small enough to be manageable, and they’re tangible—here’s a carousel; here’s a date-picker. But a design system is big and intangible.

Games are great examples of design systems. They’re frameworks. A game is a collection of rules and constraints. You can document those rules and constraints, but you can’t point to something and say, “That is football” or “That is chess” or “That is poker.”

Even though they consist entirely of rules and constraints, football, chess, and poker still produce an almost infinite possibility space. That’s quite overwhelming. So it’s easier for us to grasp instances of football, chess, and poker. We can point to a particular occurrence and say, “That is a game of football”, or “That is a chess match.”

But if you tried to figure out the rules of football, chess, or poker just from watching one particular instance of the game, you’d have your work cut for you. It’s not impossible, but it is challenging.

Likewise, it’s not very useful to create a library of patterns without providing any framework for using those patterns.

I would go so far as to say that the actual code for the patterns is the least important part of a design system (or, certainly, it’s the part that should be most malleable and open to change). It’s more important that the patterns have been identified, named, described, and crucially, accompanied by some kind of guidance on usage.

I could easily imagine using a tool like Fractal to create a library of text snippets with no actual code. Those pieces of text—which provide information on where and when to use a pattern—could be more valuable than providing a snippet of code without any context.

One of the very first large-scale pattern libraries I can remember seeing on the web was Yahoo’s Design Pattern Library. Each pattern outlined

  1. the problem being solved;
  2. when to use this pattern;
  3. when not to use this pattern.

Only then, almost incidentally, did they link off to the code for that pattern. But it was entirely possible to use the system of patterns without ever using that code. The code was just one instance of the pattern. The important part was the framework that helped you understand when and where it was appropriate to use that pattern.

I think we lose sight of the real value of a design system when we focus too much on the components. The components are the trees. The design system is the forest. As Paul asked:

What methodologies might we uncover if we were to focus more on the relationships between components, rather than the components themselves?

Have you published a response to this? :

Responses

Phil Alonso

A design system encompasses pattern libraries, style guides, and other artefacts. Having a collection of design patterns doesn’t mean you have a design system. A system is a framework. It’s a rulebook. It’s what tells you how those patterns work together. adactio.com/journal/13844

Nathan Curtis

Sure, I’m reading @adactio’s bit on design systems. But I’m flummoxed: how is a brit calling it a football game, not a match? I can’t get past that.(But yes, a component library without use constraints/rules ain’t all that)adactio.com/journal/13844

Simon Wilson

“I think a lot of people are collecting patterns and calling the resulting collection a design system. No. That’s a pattern library. You still need to have a framework for how to use those patterns.” Spot on, on this and more, from @adactio. adactio.com/journal/13844

${...args}

“the actual code for the patterns is the least important part of a design system. It’s more important that the patterns have been identified, named, described, and crucially accompanied by some kind of guidance on usage.” 🔥👍adactio.com/journal/13844

# Posted by ${...args} on Tuesday, May 8th, 2018 at 2:39am

Mike Mathis

“Games are great examples of design systems. They’re frameworks…You can document those rules and constraints, but you can’t point to something and say, ‘That is football’ or ‘That is chess’ or ‘That is poker.’” adactio.com/journal/13844

CSS-Tricks

“I think a lot of people are collecting patterns and calling the resulting collection a design system. No. That’s a pattern library. You still need to have a framework for how to use those patterns.” - @adactioadactio.com/journal/13844

# Posted by CSS-Tricks on Thursday, May 10th, 2018 at 4:00pm

prtksxna.com

🔖 Design systems (archive)

Design systems aren’t just the what of patterns and components, but also the how of putting these elements togethers. Along with patterns, the design systems should also explain:

  • the problem being solved
  • when the pattern should be used
  • when the pattern should not be used

# Monday, July 13th, 2020 at 4:56pm

1 Like

# Liked by Emil Björklund on Monday, May 7th, 2018 at 11:00am

Related posts

Composability in design systems

There’s probably a Pace Layer analogy in here somewhere.

Declarative design systems

Is your design system really a system …or is it more like a collection of components?

The Mythology of Design Systems by Mina Markham

A presentation at An Event Apart San Francisco 2019

Patterns Day video and audio

For your viewing and listening pleasure.

Patterns Day Two

Oh, what a Patterns Day that was!

Related links

What would HTML do? - The Cascade

Whenever I confront a design system problem, I ask myself this one question that guides the way: “What would HTML do?”

HTML is the ultimate composable language. With just a few elements shuffled together you can create wildly different interfaces. And that’s really where all the power from HTML comes up: everything has one job, does it really well (ideally), which makes the possible options almost infinite.

Design systems should hope for the same.

Tagged with

Responsive typography and its role in design systems | Clagnut by Richard Rutter

Okay, if you weren’t already excited for Patterns Day, get a load of what Rich is going to be talking about!

You’ve got your ticket, right?

Tagged with

Home | The Component Gallery

Here’s an aggregator of components from multiple design systems.

Tagged with

Tagged with

Pattern Wise, System Foolish

A library of UX components is one common part of a design system, but the system itself is something bigger. A good system is also a shared set of strategies for solving visual and interactive communication challenges, a playbook rather than a script.

I like this way of putting it:

The problem is that treating a design system as a pantry full of widgets is, in and of itself, a failure of both craft and imagination. Think of it like a language: if a writer’s only engagement with it is grabbing words from the dictionary and heaping them together until “message” is achieved, things are going to suck. Language is more than a bag of words.

Tagged with

Previously on this day

8 years ago I wrote A minority report on artificial intelligence

Revisiting Spielberg’s films after a decade and a half.

10 years ago I wrote 100 words 046

Day forty six.

10 years ago I wrote 100 words 045

Day forty five plus one.

15 years ago I wrote The format of The Long Now

Betting on HTML.

17 years ago I wrote Building the Real-time Web

Liveblogging a spontaneous panel from XTech 2008 in Dublin.

17 years ago I wrote Browsers on the Move: The Year in Review, the Year Ahead

Liveblogging a talk by Michael Smith at XTech 2008 in Dublin.

17 years ago I wrote Using socially-authored content to provide new routes through existing content archives

Liveblogging a talk by Rob Lee at XTech 2008.

17 years ago I wrote David Recordon’s XTech keynote

David delivers a state of the Web address to the geek nation.

21 years ago I wrote A musical interlude

Here’s a song guaranteed to bring a smile to the face of anyone who owned an 8-bit machine in the eighties… Hey, Hey, 16K:

22 years ago I wrote Same planet, different worlds

English footballer, David Beckham is worth £10.53m.

23 years ago I wrote Attack of the 50 foot iMac

If you go down to the centre of Brighton, you’re in for a big surprise.

23 years ago I wrote Salter Cane

It’s time for me to unveil a site I’ve been working on for a while now.