top of page

CASE STUDY

Wemo Design System

West Monroe • Created 2023

wemo-cardcomponent.png
ds-cards-hero.png

LEAD DESIGNER

UX / UI

DESIGN OPS

RESEARCH

DESIGN SYSTEMS

Contributing Designers

Connor Blacksher

Jamie Kang-Song

Contributing Engineers

Ted Brombach

THE PURPOSE

To create and deploy a design system to  align with 3-4 internal tools designed and built by individual product teams.

Wemo Design System
wemo-arrows.png
Isoart-cp.png
Case Place
Team of 12
isoart-pt.png
Pricing Tool
Team of 11
isoart-nigel.png
Nigel
Team of 8

What problems we're we solving?

young-girl-looking-at-color-palette-while-holding-in-hand.png

Consolidating Styles

Convert all styles into a single style by addressing primitives first, address semantic styles, and tie them all together using variables.

businessman-does-not-give-his-office-documents.png

Eliminate Custom & Embedded Components

Find and convert all one-off custom or embedded elements that are not componentized.

man-thinking-for-write-things.png

Component Framework Alignment

Select a UI framework such as Material or Mantime that all teams can agree on.

cheerful-woman-jumps-up-standing-among-rain-of-money-and-celebrates-receiving-big-salary.p

Reduce Time & Resources

Minimize the effort for designers and engineers to build out experiences from scratch.

THE RESEARCH

How do I determine a design system framework that works best for users?

To engage with my users, I jumped into researching UI frameworks and design systems to make onboarding and gaining support from my audience as easy as possible when it came to naming and organizing things. So I put my nose to the books (using Google, YouTube and Figma Community) and started doing some research to gather insights.

My focus was on three key aspects

  • Popularity

  • Usability

  • Commonality

ds-graph.png
Some of the key areas I focused on during the initial setup in Figma.
ds-organize.png

ORGANIZE

Identify a hierarchy to organize the Figma file to match common UI Component Libraries and Design Systems. 

ds-naming.png

NAMING

Name each component, component parts and variants to reduce ambiguity and findability.

ds-properties.png

PROPERTIES

Break down each component into so that their properties are mostly binary, giving them all easy access to adjust.

Planning a phased approach in order to minimize issues.

Mockups
To help establish styles using a reference

Foundational Variants
Create colors, gradients, typography, elevations and border radius styles

Spacing & Grids
Define spacing values and responsive grid types

Complex Components
Create complex components such as date time picker and modals

Figma Setup
Create a Figma file with necessary page structure

Semantic Variants
Connect foundational colors and type to corresponding uses

Basic Components
Create components that require alignment such as buttons and text fields

Patterns
Define common layout use cases that can be templatized

THE FOUNDATION

Using variables in our design system was going to minimize ambiguity and promote scalability effectively. 

Variables used in the initial phase

Primitive

  • Colors

  • Font Size

  • Font Weight

  • Font Letter Spacing

  • Font Line-Height

  • Border Radius

  • Icon Weight

Semantic

  • Text Colors

  • Icon Colors

  • Surface Colors

  • Border Colors

  • Type Styles

User goals for using variables

Reduce guessing for designers on what colors, type or other properties to choose, and allow them to focus on creating the experience.

​Get engineering to mirror all variants from design system to their UI component library to reduce custom and embedded code, and allow for quicker implementation.

ds-primsem-flow2.png
GUIDELINES & SPECS

The guidelines provide naming conventions, variants, technical and functional specifications to help both designers and engineers create or implement with little-to-no ambiguity. For engineers, it helps to establish the initial creation of an application and only requires updates when the design system manager posts a new version.

FIGMA COMPONENTS & PROPERTY SETUP

In addition to providing a guideline that has contextual value, it's kind of useful to create the backbone to crafting design solutions using components created within Figma. When designing these components, I had to carefully consider how to structure the properties into prompts to allow designers to understand how to change the property (eg. change a button state to hover). It's essentially building a user experience in Figma for the design system... for user experience designers.

Avatar Status (Avatar + Status Dot)
Component
Property Menu
Avatars.png
Avatar-Menu.png
Button
Component
Property Menu
buttons.png
icon-props.png
Slider
Component
Property Menu
Group 11.png
image.png
bottom of page