COPPER Design System

COPPER Design System

Bridging the gap between AppDynamics and Cisco products

Role

Product designer

Collaborators

2 designers, 6 engineers

timeline

Dec 2022 - Sep 2024

In December 2022, Cisco decided to transition to a unified design system called Magnetic for all applications. My team (Particle) was tasked to figure out how to move from our dark theme, data-dense design to match Magnetic's light, airy style. I was in charge of figuring out the design side, creating components and templates, as well as discussing with engineering the best way to approach changing the UI.

Stage one: theme switch

Stage one: theme switch

The first step to the theme switch is adjusting the values of our color tokens. Rather than creating a new set of tokens, this would allow our current components to automatically take the changes that we were making, instead of having to fix each component one by one. Two major issues arose:

✻

Color mode: Particle’s main theme was dark theme, and Magnetic only has a light theme.

✻

Color layering: Particle’s colors are based on an opacity scale, Magnetic only has full opacity colors.

A comparison of the neutral scale between the two systems.

We started by changing the values of color variables of Particle’s most important colors that were similar, and then following the scale for the rest. These color styles then updated for our components, and significant time was put into accessibility testing components for WCAG compliance, as well as looking at full page templates to see how cohesive everything looked together.

Stage two: component wrap

Stage two: component wrap

While the color change was important to get the demo looking like it belonged in the application family, a full change would have to happen. We talked to other teams in Cisco who transitioned to Magnetic before us and how they approached it. What we found was that creating a private library for our designers that wrapped the new library components would be beneficial for two reasons:

Code parity

It is unlikely that engineering could immediately switch to Magnetic’s React library fully. Stylizing existing components to look right would be the best option.

Managing updates

If an update that would break our designs is pushed, our wrapped components would not be affected unless manually updated.

We focused on wrapping the components, keeping properties by revealing nested instances, and also adding the components Particle had, but was missing in Magnetic. This new wrapped library was named COPPER , which stands for Cisco Observability Platform Product Experience Repository.

The wrapping approach, also used by Blueprint at Cisco, allowed for us to control updates and customize components to our needs.

Stage three: templates and guidelines

Stage three: templates and guidelines

Beyond component swaps, designers needed to see Magnetic's full impact: new grid, spacing, and layout rules. I helped build "ideal state" templates as a north star, owning traces, logs, dashboards, and authorization.

An example of how COPPER translated the Logs page in Cisco Cloud Observability.

👋 Thanks for stopping by!

👋 Thanks for stopping by!

👋 Thanks for stopping by!