Design systems are essentially a set of rules and parameters. If you look at brand guidelines,
for example, you could theoretically turn that into code and create a system that can generate
the majority of the stuff. This has been practically and theoretically in my head even ten years
ago. I was thinking, “Why do we have 200 pages of shit in a PDF when you could write code to
automate most of these tasks?” It’s all kind of ridiculous that that’s still the norm.
The design that I find interesting asks the question, “What can you do a lot with... if you
only have a little amount of stuff?” For instance, if we just have well-considered typography,
we don’t need to add illustration, photography, or art direction. We don’t need all of that
because if we can do a lot with a little and then apply certain rules to that, then it does
generate a consistent aesthetic.
There’s this idea of a system that’s in mind: “A + B + C = this.” Then you decide, okay, these
are the things you don’t want the client to change, and these are the things that you give them
allowance to change. We’re trying to find where the flexibility in the system still feels
consistent when it’s generated but also dynamic and interesting. After that, it’s really about
setting guardrails. So it’s us testing and playing to see how much freedom we allow the system
to have before it breaks and becomes abstract. Limitations on typography and color are the two
things that you can lock systems down with. For example, suppose you set limitations on color or
x-height on a typeface but leave everything else open. In that case, you’ll still generate some
consistency through the exports because you’ve already set
those limitations.
We find that balance through testing. It starts with prototyping. We have extensive experience
using 3D and animation software. So, we can create renders and create the basis for what a
generative tool can look like. I can make three different renders, with variations on specific
parameters such as type size, leading, and color. After that, you can apply those variables to
code and create a more accessible and playful system. Some fun examples include mapping it to a
camera, putting images to effect it, and using noise; it can all become endless once you have
the core idea sorted.
It’s a synthesizer, really, essentially, that is what it is. Export. Hit render. Make a poster.
It’s fast. It’s hard to get there. But then there’s practicality to it. When talking about
client work and branding, branding is a production problem for big companies because they have
this design system and need to produce it. And they need it done fast. Internal design teams
aren’t trying to create a new challenge every time. They’re trying to get an ad out quickly
because they are usually strapped for time. So, if you have tools or templates and things built
for them, it makes their life a lot easier, and it’s much more valuable than supplying a large
PDF to decipher.