Aaron Cappuccio

All-Risks Insurance Brokers 路 Design System

Designing the system behind the product

I created a scalable design system for All-Risks' digital insurance products, defining the foundations, components, interaction patterns, and insurance-specific workflows used across quoting, onboarding, policy management, and self-service.

Role
Product Designer
Focus
Design Systems 路 Accessibility 路 UI Architecture 路 Developer Collaboration
Scope
250+ reusable components and variants
All-Risks design system cover showing component library pages

The challenge

A growing product needed shared rules

Quote, onboarding, policy, payments, documents, and self-service were each solving the same interactions in their own way. A date field, an error message, or a progress indicator could look and behave differently depending on which team built it.

  • Inconsistent UI patterns across product areas
  • The same design decisions made again for each feature
  • Complex forms with no shared approach to validation
  • Unclear behavior for engineers to implement

My role

From audit to shipped components

Audited existing patterns

Collected how quote, onboarding, policy, and payment screens handled the same interactions, and where they differed.

Defined the tokens

Set semantic color, type, spacing, radius, and elevation roles so decisions were made once.

Built components and variants

Designed reusable components with every state they needed, from focus and loading to error and disabled.

Designed insurance patterns

Turned recurring insurance tasks, like comparing coverage or tracking a quote, into documented patterns.

Documented states and usage

Wrote when to use each component, what each state means, and what to avoid.

Partnered through delivery

Worked with Product and Engineering through implementation and QA so the coded system matched the design.

System architecture

Four layers, each built on the one before

Tokens feed components, components combine into insurance patterns, and patterns become the screens customers use.

  1. Layer 1FoundationsColor, type, spacing, shape, icons
  2. Layer 2ComponentsButtons, forms, navigation, feedback
  3. Layer 3PatternsQuote progress, coverage, comparison
  4. Layer 4Product experiencesQuoting, onboarding, policy, self-service

Foundations

Start with the rules, not the screens

Every token is named by its role, not its value. Changing a brand color or tightening spacing happens in one place and carries through every product.

Components

Reusable behavior, not just reusable UI

Each component defines how it behaves in every state, not only how it looks at rest.

Insurance-specific patterns

A design system shaped around insurance

Generic components were not enough. These patterns capture tasks that only exist in insurance and come up across every product.

Accessibility

Accessibility built into the system

15 Accessibility

15 Accessibility
Contrast
4.5:1 for body text and 3:1 for large text and UI boundaries.
Visible focus
A 3px focus indicator surrounds the whole interactive target.
Error guidance
Errors name the problem and explain how to fix it.
Touch targets
Interactive areas are at least 44 by 44 pixels.
More than color
Every state pairs color with text, shape, or an icon.

Design to development

A shared language between design and development

    01

    Semantic naming

    Tokens are named by role, like color/status/destructive, so design and code refer to the same thing.

    02

    Reusable states and variants

    Each component ships with defined states, so engineers do not have to guess what hover, error, or loading look like.

    03

    Documented behavior

    Usage notes say when a pattern applies and what it should never do.

    04

    Consistent validation

    Forms share one approach to labels, helper text, and error recovery across every flow.

    05

    QA collaboration

    Built screens were reviewed against the system with Engineering before release.

Impact

Designing rules that scale beyond one feature

250+
Reusable components and variants
Shared rules
One set of foundations and components across quoting, onboarding, policy, and self-service
Faster starting points
New workflows begin from existing components and patterns instead of a blank screen
Accessibility by default
Contrast, focus, targets, and labels are built into components, not checked at the end

Reflection

From screens to rules

The biggest shift was moving from designing individual screens to defining the rules behind them. The system had to be flexible enough for different insurance workflows while still being opinionated enough to create consistency.