Haven Design System

Design System Creation, Maintenance, & Advocacy

Haven Design System (HDS) is designed in Figma and documented in both Figma and Storybook for designers and frontend engineers, respectively.

Company
Haven Technologies

Year
2021 & Ongoing

Role
Senior Product Design (Design Systems)

HDS Core Library

The Haven Design System (HDS) is a comprehensive set of styles, components, and patterns that aim to make design and front-end development at Haven Tech simpler and more consistent. Every feature of the system is held to high standards of usability, accessibility, and aesthetics.

The core Figma library covers:

  • Principles (Crafted, Considerate, Empowering, Trustworthy, Efficient, and Familiar)

  • Foundations (Color tokens, typography tokens, icons, spacing tokens, breakpoints & grid layout, elevation & shadows, and focus states)

  • Best practices (Accessibility, data formats, error & validation messaging, supplementary messaging, hierarchy & IA, vocabulary, and semantic intent guidance)

  • Components (Accordions, alerts, banners, buttons, cards, etc.)

Abstract color palette

Our abstract palette adheres to WCAG 2.1 Level AA contrast checks across key color combinations to ensure a “safe” palette for core HDS components to choose from.

  • All tones 60+ pass 4.5:1 contrast checks with inverted white text

  • All tones 50 and below pass 4.5:1 contrast checks with default Slate 100 text

  • All tones +/- 40 pass 3:1 contrast checks in the same hue*

  • All tones +/- 60 pass 4.5:1 contrast checks in the same hue*

* Neutrals (Sand, Gray, and Slate) pass contrast checks across all hues

  • Abstract colors are then assigned to color tokens that are named “with intent”, signifying colors for text, text-muted, text-disabled, all the way through semantic, non-semantic, interactive, button, control, option, and brand tokens.

Screenshot of all Abstract Palette artboards in Figma

Color tokens

Color tokens are named “with intent” based on a predefined naming syntax pattern, all done in close collaboration with engineering.

Rather than defining tokens like gray-light, gray-medium, gray-dark, color supports the purpose of the content, communicating the hierarchy of information, interactive states, and semantic and non-semantic elements to make color choices easy and predictable for design and engineering.

Examples of token naming include: —hds-color-text, —hds-color-text-muted, —hds-color-semantic-critical-accent, —hds-color-link, —hds-color-button-accent, etc.

The color system is carefully designed to comply with WCAG 2.1 AA contrast ratios.

Screenshot of Color Token documentation in Figma

Component documentation

All HDS components are crafted for designer ease-of-use, with handoff to the HDS team’s frontend engineering in mind.

Documentation covers:

  • Components and subcomponents

  • Status, Version, and link to Storybook documentation

  • Definition, “When to use”, and best practices

  • Anatomy, spacing, and density

  • Interactive states, semantic variants

  • Expected placement within our page structure best practices

  • Accessibility notes and visual regression testing

Screenshot of Alert component documentation in Figma

Component research, audits, and exploration

All new components and patterns are brought through a defined process to ensure well-rounded, reusable elements for designers and engineers to use across products. This process includes

  • Initial design and engineering scope and timing conversations

  • High-level definition of the component or pattern

  • Internal auditing of any use of the element across existing products

  • External research across key design systems and other resources

  • Design exploration & note-taking of open questions

  • Review and refinement

Screenshot of badge research and exploration, including artboards diving into badge examples across design systems, and internal audit, design exploration, and refinement

Designer ease-of-use

Of the smaller details of the system, I’m most proud of the ease-of-use improvements I’ve made to all components by leveraging Figma properties to mimic our own engineering properties:

Variants & Properties

  • Hierarchy (Primary, Secondary, Tertiary, etc.)

  • States (Default, Hover, Active, Disabled, Focus, Selected/Unselected)

  • Spacing (Default, Dense, Comfortable)

  • Semantic Intent (Neutral, Info, Success, Warning, Critical, Help)

  • Boolean property: Allows designers to toggle layer visibility

  • Swap instance: Enable easy swapping of an icon

  • Text property: Surface the text value directly within the properties panel

Designers are able to pull components from the library and have a wide range of customization options all directly within their properties panel. It’s a huge time-saver and makes engineering handoff that much easier since our front-end team can directly see how a component should be translated into the options and variants within their own work.

Accessibility documentation

While our Storybook documentation covers the technical side of accessibility requirements and considerations, our Figma documentation also includes designer-specific notes to keep accessibility top-of-mind when using HDS components.

Documentation and visual examples cover:

  • Keyboard interactions & tab order

  • Heading levels & hierarchy

  • Color contrast

  • Context

  • etc.

We plan to expand this documentation to cover inclusivity-specific notes, especially as we grow our library of more complex patterns and page templates.

Theming

With theming as a major 2022 goal of our design system, our focus on lightweight, but powerful theming capabilities of the system was key. By leveraging our color token system, we’re able to easily swap colors assigned to specific tokens to generate new themes for internal use or client use. Below is an example of our standard Light theme and an alternative Dark theme (other more client-specific themes are in our Themes Library).

Patterns

Beyond the core tokens and components of the system, HDS has quickly become a centralized resource for more specific or complex design patterns to promote and ensure consistency, scalability, and accessibility across the platform. Each pattern runs through the same process of research, ideation, testing, and refinement before being documented and published within the Patterns library.

Contributing to the Haven Design System

In Q3 of 2022, we opened the door to other designers contributing directly to the system as we see more momentum in the SaaS design space. The following is a guiding resource for any designer interested in making direct contributions to the Figma library and additional handoff to engineering.

Next
Next

Haven Disability · Marketing, Quote, Brand