Design System, Component Library & Dark Mode Integration

I spearheaded two pivotal projects at Niyo, establishing a comprehensive design system, an extensive component library, and integrating dark mode. These initiatives led to a 2x increase in design efficiency and streamlined collaboration between design and tech teams.

My role in spearheading two pivotal projects at Niyo: the development of a comprehensive Design System, an extensive Component Library, and the seamless integration of Dark Mode. These initiatives aimed to streamline design processes, enhance collaboration between design and tech teams, and improve overall efficiency. This document explores the process, challenges, and outcomes of these projects, showcasing the impact on design workflow and company efficiency.

Creating your own design system

Where to start?

When embarking on the journey of creating a design system, the initial steps can significantly influence the system’s success. There are two distinct approaches to consider, each with its merits and considerations.

Organic Growth:

As the system matures, new elements seamlessly integrate to accommodate emerging use cases. When the system reaches a certain level of maturity and saturation, it becomes an opportune moment to formalize it into a structured design system.

Strategic Planning:

It begins with the establishment of a basic system that aligns with the current product’s needs. Subsequently, this evolving system serves as the foundation for accommodating new, unexpected use cases as they arise.

Advantages

  • Creative freedom prevails, allowing for innovative solutions.
  • Continuous adaptability to evolving needs and unforeseen scenarios.
  • No immediate need for rigid guidelines or constraints

Advantages

  • Proactive preparation for future design requirements.
  • A structured foundation ensures consistency and scalability.
  • Gradual integration of new elements enhances system robustness.

Ultimately, the choice between these approaches depends on your specific circumstances, project goals, and team dynamics. Whichever path you choose, the key lies in fostering a design environment that fosters creativity and adaptability while remaining mindful of the system’s long-term vision.

Typography

It’s a pivotal step that requires careful consideration, as fonts wield significant influence over a project’s visual identity and user experience.

Understanding Fonts:

At its core, a font is a unique amalgamation of several attributes, including the typeface family, typeface style, weight, and size. Even fonts with the same typeface family and weight but different sizes are distinct entities. One of the primary objectives should be to minimize the proliferation of fonts within the system.

Controlling Typeface Variety:

The question arises: how many typefaces should be employed in your design system?

Broadly speaking, there are two categories: brand typefaces and UI typefaces, each serving distinct purposes.

Brand Typefaces

  • The selection of a brand typeface may not be negotiable, as it plays a pivotal role in giving a brand its unique identity.
  • Brand typefaces may embrace quirky features, aiming to be memorable and align aesthetically with the brand’s image.

UI Typefaces

  • UI typefaces should aim for invisibility. UI fonts should exhibit clarity and cleanliness, optimized for screens at various font sizes.
  • They need not necessarily align with the brand typeface. However, if the brand typeface is clean and suitable for small sizes, it can also serve as the UI font.

Ultimately, the choice between these approaches depends on your specific circumstances, project goals, and team dynamics. Whichever path you choose, the key lies in fostering a design environment that fosters creativity and adaptability while remaining mindful of the system’s long-term vision.

Auditing and Rationalizing:

The next crucial step involves auditing existing screens to identify the assortment of fonts in use. Map out the diverse use cases, striving to minimize font diversity wherever possible. During this process, it’s essential to consider whether the design system will primarily serve web or mobile platforms, as different nomenclatures and considerations apply.

For web design, you commonly encounter designations like H1, H2, H3, H4, H5, H6, and body text. In the mobile context, designations shift to Headline (Small, Medium, Large), Title (Small, Medium, Large), Label (Small, Medium, Large), and Body (Small, Medium, Large).

By scrutinizing and thoughtfully selecting fonts for these categories, you not only enhance visual consistency but also ensure optimal readability and user experience across different screen sizes.

Typography is a pivotal facet of any design system, influencing both aesthetics and usability. Careful typographic considerations are a foundational step towards a robust design system.

Design System

Typestyles used at Niyo

Color

A color is a potent tool in design systems, with five primary categories that warrant meticulous consideration: Brand, Status, Surface, Text, and Additional colors. Let’s explore each of these categories in detail to understand their significance in shaping a robust design system.

Brand Colors:

At its core, a font is a unique amalgamation of several attributes, including the typeface family, typeface style, weight, and size. Even fonts with the same typeface family and weight but different sizes are distinct entities. One of the primary objectives should be to minimize the proliferation of fonts within the system.

  • Primary and Secondary: Brand colors are the visual embodiment of your brand’s identity. They may consist of primary and secondary hues. These colors typically exhibit strong contrast, ensuring legibility and visual impact. Consider including a lighter version of your primary brand color, referred to as the ‘container’ color, for background use.
    • Brand Primary, Brand Primary Container
    • Brand Secondary, Brand Secondary Container

Status Colors:

  • Categorizing Status: For effective user communication, designate status colors for common states like success, error, and warning. Even if your brand colors resemble these states (e.g., red, yellow, green), define status colors separately to maintain clarity and consistency.
    • Error, Error Container
    • Success, Success Container
    • Warning, Warning Container

Surface Colors:

  • White and Greys: Surface colors encompass white and various shades of grey. It’s advisable to employ a linear naming convention to make colors easy to remember. For example, Material theme uses Surface, Surface 1, Surface 2, and so forth. Avoid pure white for backgrounds; opt for a gradient from light to dark.
    • Surface
    • Interface Light (Surface 1)
    • Interface Dark (Surface 2)
    • Divider Light (Surface 3)
    • Divider Dark (Surface 4)

Text Colors:

  • Text Hierarchy: Text colors play a crucial role in readability. Consider four types: primary, secondary, tertiary, and link colors. Primary text should avoid pure black, adding a hint of brand color if desired. Link color is typically blue but can align with the brand color.
    • Text primary
    • Text secondary
    • Text tertiary
    • Link

Additional Colors:

  • For Special Use Cases: These colors cater to specific, non-standard use cases. Examples include primary CTA colors, overlay hues, and colors for infographics, icons, or charts. Minimize their number and establish a clear hierarchy. For a single color, consider three variations: base color, container color, and overlay color.
    • Pink: Base pink color (attention-grabbing)
    • Pink Container: Light shade of pink (background)
    • On Pink Container: Dark shade of pink (text or icons on the pink background)

Accessibility Considerations:

When selecting colors, ensure they meet accessibility criteria. Colors used for text or icons should maintain a sufficient contrast ratio to ensure legibility, especially for users with visual impairments.

Incorporating these color categories into your design system provides a structured framework that enhances visual consistency and user experience across your products. A harmonious color palette, balanced with accessibility, is a cornerstone of a successful design system.

Colors used at Niyo. Light Mode and Dark Mode