Invideo:

Design System

Invideo:

Design System

Timeline

6 months

Role

Lead Designer in the team of 3 designers. Leading strategy, planning, building and maintaining design system.

Tools

Figma, Figma Tokens, Github

Challenge

How might we build a flexible design system to bring order & consistency to design and save time for front-end development?

Context

We were in the process of redesigning the app from the ground up. As part of that big project, we also started working on design system.

Back then, there were only separate unorganised design libraries mostly for web editor. We needed system and order.

Through communication with Dev leads we figured out what their problems, expectations, requirements and suggestions are.

Key Problems

Problem

Inconsistent design & absence of one and only source of truth

Problem

Impossible to scale the design

Problem

Elements in design libraries did not match actual components in code

Problem

Developers spent too much time on front-end tasks

Research

We conducted research & analysis of existing solutions. It allowed us to understand the scale of the project, best approach that would work for us and make a rough time estimate as well.

Key takeaways

Key
takeaways

Focus on the relationship between design and development

Identify the values the design system will be built upon

Emphasize intentional handoff processes

Allow other teams to create sub-design systems that contribute to the whole

Accept the bumps in the road

Structure & Planning

Structure & Planning

Structure & Planning

I detailed the architecture of the future design system, prepared slides to communicate it to the team so they can understand it better, align and follow along.

After that was done, we’ve put together an Inventory list with all the essential libraries and components, I created and assigned tasks for my team.

Foundations

Foundations

We reviewed existing design libraries, reorganised and expanded them into Foundation libraries, which consisted of:

Colors

Typography

Icons

Spacing

Grids

Motion

Branding

Colors

Typography

Icons

Spacing

Grids

Motion

Branding

Colors

Typography

Icons

Spacing

Grids

Motion

Branding

Colors

Icons

Icons library included around 140 unique custom made icons, each in 4 weights, 8 sizes and most in 2 styles (filled, stroke). So, 1120 icons in total.

Tokens

We implemented 3-fold structure for design tokens. First level, Base token, represented raw design decision. Second level – Appearance token – described a property or appearance of specific element (where and how the color is used, for example).

Finally, third level – Functional token – defined function of specific design element, so designers & devs did’t need to guess what color to pick in a specific state of a button, for example.

Components

Components

With Foundations & essential Tokens in place we continued to creating Component libraries.

Documentation

Documentation

For every feature we shipped we prepared a detailed specification on each component, describing all states, behaviour, which tokens were used, as well as hard values.

It helped designers to keep things in perfect order, and developers to see all the info they need and simply pull required design tokens from Github.

Export to Code

Export to Code

We integrated Figma Tokens plugin in order to store, organize and then export the tokens to Github.

Results

We managed to build and embed into our design process a new system, which significantly improved design quality and consistency and saved lots of time for developers and designers.

6 days

3 days

Average time for front-end tasks for new UI-screen with 5-10 new components significantly decreased.

Increased efficiency

Streamlined design workflow, increasing efficiency while decreasing time spent to design new screens, flows or features.

Improved handoff

Our detailed Documentation reduced friction between design and dev teams significantly.