Airbnb Design System — multi-end component library overview

Jan 2023 - Dec 2023

Airbnb Design System

Overview

A multi-end Design System serving as the foundational framework for Airbnb's web, tablet, and TV experiences in the China market. The system unifies design language, accelerates product velocity, and enforces quality at scale across 8 product teams.

Role

Principal UX Engineer

Skills

Design system / Visual design

Platform

Web / Tablet / TV

Context

Why a unified design system?

As Airbnb's China design team scaled, each product team maintained its own component libraries — resulting in design drift, inconsistent experiences, and slow development cycles. The system needed to be rebuilt from the ground up.

The goal was a single source of truth: a living library of components that any team could consume, with clear documentation and platform-specific variants built in.

Components

120+

Product teams

8

Platforms

3

Foundation

Design tokens & core primitives

Color & Typography

We established a complete token layer — semantic color roles, type scales, spacing units, and elevation values — that feeds into every component. Tokens are platform-aware: the same semantic name resolves to the correct value on web, tablet, or TV.

Spacing & Grid

A four-point spacing system combined with responsive grid definitions ensures that components reflow correctly across breakpoints without manual adjustment by product designers.

Design tokens — color roles, type scale, spacing grid and elevation

Components

Building 120+ components

Every component goes through a lifecycle: scope definition → design → accessibility review → documentation → handoff → developer QA. Only components that pass all gates are published to the library.

Components are built with variants at their core — state, size, theme, and platform variants are defined upfront so teams never need to detach or rebuild from scratch.

Component library overview — all 120+ components organized by category
Rule 1

Adaptive components

Components respond to window size and input mode. No separate mobile and desktop variants — one component, all contexts.

Rule 2

State-complete

Every component ships with all interactive states defined: default, hover, focus, pressed, disabled, loading, and error.

Rule 3

Accessibility first

ARIA roles, keyboard navigation, and color-contrast ratios are validated before any component is published to the library.

Multi-platform

Web, tablet & TV

The system spans three distinct surface types. Web components use pointer-optimized interactions, tablet variants support multi-input (touch, trackpad, keyboard), and TV components are purpose-built for 10-foot remote-navigation with large focus rings and autoplay-safe layouts.

Multi-platform component — the same component rendered on web, tablet, and TV

Tablet adaptations

Tablet components use a wider spacing scale, support pointer-based hover states, and include sidebar navigation variants. Split-view layouts are defined at the component level, not left to product teams.

TV adaptations

TV components remove all hover states and replace them with focus states. Font sizes scale to the 10-foot viewing distance, and all touch targets meet the minimum 44×44px focus area requirement for remote navigation.

Platform comparison — web, tablet, TV component variants side by side

Documentation

Making it easy to adopt

Every component ships with a documentation page covering Anatomy, Usage, Do & Don't, Accessibility, and Motion. The docs are built into Figma as component annotations so designers never have to leave their tool.

We also run monthly design system office hours and a Slack channel for real-time help, reducing the friction of adoption and surfacing edge cases early.

Component documentation — anatomy, usage, do and don't, accessibility, motion

Impact

Results across 8 teams

After a 12-month rollout, all 8 China product teams migrated to the unified system. Design reviews went faster, developer handoff required fewer redlines, and the team shipped a cross-platform feature in 30% less time compared to the previous year.

−30%

Time to ship cross-platform features

8×

Teams on a single shared library

120+

Published & documented components