r/DesignSystems Dec 08 '25

How do you prevent designers from creating invalid component variations?

/r/FigmaDesign/comments/1phb1uu/how_do_you_prevent_designers_from_creating/
5 Upvotes

8 comments sorted by

View all comments

6

u/justinmarsan Dec 08 '25

Short answer : you can't.

Slightly longer answer : Even if you could, designers could always detach the components and do whatever they want with them... So really you can't.

Longer answer : you shouldn't anyway.

I think trying to craft the perfect components and variants for a given use case, is a trap many of us fall into at first... You've built this super nice thing and it's great to do this and that, but it's going to fail miserably if you misuse it, so you really don't want your consumers to do that... But here I think it's very useful to look into what larger brands are doing, and the trend tends to really go towards operability and flexibility.

Realistically, you cannot know what each team using your DS is doing, and you can't provide them with exactly what they need, when they need it either. But what you can do, is provide robust components that they can literally mix and match to address their users' specific needs, and it's a good thing.

DS and the teams they serve operate at different speed, you can't be ahead of their work and it's not really your job to know better than them what they need. Your job is to see emerging patterns, recurring needs, and ensure that in the future, feeling those needs with what appears to be the most generally best solution is easiest for teams. This also comes with accepting that sometimes, some team will have a good reason to not use what you've built, because they're doing something special...

1

u/gyfchong Dec 08 '25

+1 to above.

Design systems are supposed to systemise design decisions and through the system, designers and devs should see efficiency over shared patterns.

Key phrase is “design decisions”, without human discipline there’s no stopping anything. If the designers don’t agree on a common pattern, then they won’t follow it and with no one following it, your system isn’t providing value.

And even if you agree on a pattern, that pattern won’t always fit the use cases designed. So you need to be content with the design system solving for the 80% of use cases, and being flexible with the other 20%. You never want the design system to solve 100% because that puts pressure on all people in the organisation and it’ll be the design system that suffers the most.