Building a source of truth for entertainment platform

Project

In-house Design systems

Credit

Ross Gibson - DS Manager
Rafael Rojas- Software Engineer
Rina Krevat - Software Engineer
Dave Medina & Liv Califano - Product

What I did

Design System
Strategy
Component Design
Mentoring
Front-End-UI
Tooling
Documentation

Platforms

Web
iOS/tvOS
Android/GoogleTV/FireTV
Roku
Android Auto
SmartTV
Low-powered Devices

Paramount+ is an American subscription video on-demand over-the-top streaming service owned by Paramount Global. As the first designer in our company's Design Systems, I spearheaded the initiative to build our design system from the ground up. My journey began with the creation of design tokens and component designs, developing strategies to ensure consistency and scalability across our products.

I collaborated closely with DS Manager, developers and DevOps teams to set up the design system repository and establish pipelines to efficiently ship packages. My role encompassed a wide range of responsibilities and this case study explores these responsibilities.

Please check out my changelog.

Establishing a Design Systems Team

Collaborating with my manager, we assembled a team with diverse skills to ensure consistency and scalability.

Team Composition
Collaborative Approach

With the team in place, our next step was to chart out our course of action. This starts with:

Research

We conducted internal surveys and interviews with designers and developers, focusing on pain points in the existing workflow. We analyzed feedback and collected data on time spent on design-related tasks and the frequency of design-related bugs.

Key challenges identified were:

To address these challenges, we explored different solutions. This case study explores the implementation of those solutions.

Streamlining a Design System

Recognizing the potential of streamlining our design-to-development workflow, our team, alongside our talented front-end developer, embarked on building a comprehensive Design System (DS) repository on GitHub with integrated automation.

Processs

Results

Crafting a Design Token System

Consistency is the key to creating products that resonate with users. Yet, maintaining that consistency, especially across multiple platforms, can be challenging. To address this, we embarked on a journey to establish a design token system that would define the visual style of our products through decision values. Design tokens were introduced as a scalable set of variables (like colors, typography, spacing etc.) stored in a JSON format, facilitating consistency and easier management of design systems.

Tools and Technologies

We used Figma for design creation, with a Figma Token Plugin to extract design tokens in JSON. These tokens were then converted into platform-specific styles using Style Dictionary.

Implementation of Design Tokens

In Figma, after defining and organizing variables (colors, typography, spacing) in a shared library, they are ready to use in designs.

On the development end, these JSON files were used to generate platform-specific resources. For Web, CSS variable, For iOS, this meant generating color sets for use in Xcode, while for Android, XML color resources were created.

The implementation involved:

Results

Developing Components for Multiple Platforms Using Figma Variables

By leveraging Figma’s design features and collaborating closely with developers, we were able to create scalable, reusable components that could be implemented across multiple platforms while maintaining design consistency and performance.

Challenges

Solution

Tools and Technologies:

Process Overview

Results

The implementation of components using Figma variables led to several key improvements:

Streamlining Figma Libraries

Experiencing rapid team growth, we recognize the importance of efficiently managing Figma Libraries. These libraries form the core of the daily operations for our design team, which includes 15+ Product Designers. The team's extensive weekly use of thousands of components underscores the need for meticulous organization and maintenance of these libraries.

Challenges

The primary challenge was keeping the Figma Libraries clean, well-organized, and accessible. Initially, all components were housed in a single file, leading to accidental deletions, overrides, and misalignments. Additionally, the team grappled with decisions on component usage and sharing and managing components not intended for development.

Solution

Splitting Components into Base and Pattern:

Results

This revamped structure led to significant enhancements in managing and utilizing Figma Libraries, evidenced by:

Creating Comprehensive Documentation

We identified the need to restructure and redefine our documentation to support new tokens and component documentation within our expanding design systems.

Process

Results

The implementation of comprehensive documentation resulted in the following:

Key Learnings

Creating a comprehensive design system is a highly challenging endeavor.

By establishing a dedicated team, automating workflows, and maintaining clear documentation are crucial steps to ensure the successful development and implementation of a scalable, user-centric design system. If you are reading this, Thank you.

View other works