The front-end engineering team had not been a part of building the original design system and I believe it was important to bring them along on the journey in order for the system to be successful. I set up a weekly check-in for us to discuss progress and next steps related to the new design system we were building.
Color & typography
During our first check-in I began by starting with one of the most foundational components to a design system – color and typography. We reviewed the existing color palette together, answered some key questions, and identified several issues. Were we using all of the colors and type options in the system? Where? How? Did the colors and type in Figma match what was in production?
- In many cases, the hex codes in Figma were not matching up with the exact hex codes in the front-end codebase.
- There was a separate color palette from the marketing team that was stuck to the side of the file, but not being used in the design system.
- I'm generally a big fan of simplicity, however, the existing system colors and typography options were much too restrictive when it came to semantic and background colors. This led to bespoke implementations in the UI.
- The existing system was missing guidance for how these colors and type options were to be applied in the UI.
What it looks like now
After eliminating excess colors and identifying areas to expand, I reviewed the revised palette with the marketing team to ensure alignment with the Plainsight brand. We ended up adding a few additional brand colors as a result.
The complete palette lists the core color component, followed by when it's used, the specific name in our front-end library, and the hex code. I found this layout helped both design and engineering understand the meaning of the color, how to find it, and what it should be used for.
For typography, the existing system was much closer, however, I added a few additional options like Body Emphasized and Body Small text for captions and key phrases. Additionally, line spacing and usage text were applied to each font style to give users extra context when applying that style in their designs. Lastly, I included rationale that connected our chosen typeface to our brand identity.
When testing this out when building mockups and prototypes, I found we had just the right balance between simplicity and flexibility. Each color and type option had a purpose in the UI and not a single color or font style got unused!