Setting up the Consumer Design System at Swiggy

Setting up the Consumer Design System at Swiggy

My Role

Owned the consumer side of design system— identifying patterns, designing components, documenting, setting up workflows, building plugins, etc.

Team

Raunak Trikha, LPD
Ezaz Ansari, VD
Gowtham, VD
Sam, SDE
Nihar, SDE
Ashoka, SDE

Duration

Aug 2021 - Sep 2023

Overview

As our business expanded and teams grew, the Consumer App struggled to maintain consistency. We needed a less-design, less-code framework that could enable us to build, ship and iterate quickly.

Setting up the design system involved these major steps— global reskin of our consumer app to system tokens, creating reusable components, setting up audit and handoff processes.

The Backstory


As our business expanded and teams grew, the Consumer App struggled to maintain consistency. We required a less-design, less-code framework that could enable us to build, ship and iterate quickly.




System Architecture


Core System: Components and elements are business agnostic.

Pattern Library: Components address the unique needs of various teams in the organization




Key Frameworks





UI Design with Base Tokens




After defining our base tokens, we did a reskin of the entire consumer app. Updating all colors, shadows, typography, etc. to the new design system tokens.





Creating Components


We used this framework to design components. The challenge was to identify repeatable patterns and prioritise what should be included in the system.




Behind The Scenes


Restaurant Listing was a very commonly used pattern across the consumer discovery flow. Here's the behind the scenes of designing the listing component.



Base Component


Defines the basic structure or skeleton of the component. It helps us reduce the maintenance efforts across multiple configs and themes and makes it easier to create new ones if required.



Variants



Documentation- Configurations


Defining all the possible states, use cases, themes that the component could exist in.



Documentation- Specifications


Defining values for spacing, padding, dimensions like width and height, and how it adapts to different devices.



Documentation- Behaviour


Defining how the component reacts on user action or behaves on system triggers. I defined a Motion Design System to guide us how to use motion in the Swiggy ecosystem.



Pixel Perfection


PP or Pixel Perfection is ensuring that all states of the component look perfect on every device.




Governing With Design Audits


We used to conduct audit sessions with designers to find and fix issues like missing styles, incorrect tokens, components used from other libraries, etc.




Roast Plugin


I build a Figma Plugin to automate the audit process. With Roast anyone could spot design issues like missing or unwanted tokens and fix them instantly for a quick handoff.




The Impact


  • Our app interface is now more consistent ,  which means a coherent experience for our users.

  • Design-dev handoff has become much faster. We no longer need hours of pixel perfection to fix each nitty-gritty.

  • A library for reusable components allows our teams to ship faster, fail faster, and iterate faster.

Say Hello!

Say Hello!

Have an opportunity, wanna collaborate on something cool or just say hello!

Have an opportunity, wanna collaborate on something cool or just say hello!

milanmundra98@gmail.com

Create a free website with Framer, the website builder loved by startups, designers and agencies.