Aa NAD Design SystemAa NAD Design System
GitHub

Open-source design system · v1.2

Aa NAD Design System

A universal, monochrome, accessibility-first design system for web and mobile, written so that designers, developers and AI coding agents can all follow it.

45React components
3themes, incl. AAA high contrast
249design tokens
515Ionicons, outline + filled

Get started

No build step needed

Load the tokens, the stylesheet, React 18 and the bundle. Components are on window.AaNAD. Switch themes with data-theme on <html>, or follow the OS with AaNAD.watchSystemTheme().

<link rel="stylesheet" href="tokens/tokens.css">
<link rel="stylesheet" href="dist/aa-nad.css">
<script src="https://cdn.jsdelivr.net/npm/react@18/umd/react.production.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/react-dom@18/umd/react-dom.production.min.js"></script>
<script src="dist/aa-nad.js"></script>

const { Button } = AaNAD;
ReactDOM.createRoot(app).render(React.createElement(Button, { variant: 'primary' }, 'Continue'));

Foundations

Tokens

Every value below is read from tokens.json and reflects the theme you've chosen. Use the token names, never the raw values.

Semantic colours

Palette

Typography: Atkinson Hyperlegible Next

Spacing: 8px grid with a 4px half-step

Radius

Elevation

Components

45 components, all states

Live demos rendered from dist/aa-nad.js. Try them with the keyboard: every widget follows the WAI-ARIA patterns.

Actions

Button

5 variants · 3 sizes · icons · loading · disabled

Guide

IconButton

Icon-only, always labelled

Guide

Forms

TextField

Label · helper · error · icons · prefix · disabled

Guide

TextArea

Character count, error, disabled

Guide

Select

Native select with placeholder, error, disabled

Guide

Checkbox

Checked · indeterminate · error · disabled · group

Guide

RadioGroup

Vertical with descriptions, horizontal, error

Guide

Switch

On · off · description · disabled · label start

Guide

Slider

Value output, custom format, disabled

Guide

SegmentedControl

2–5 options, icons, sizes

Guide

Combobox

Type to filter · ↓↑ Enter Esc · live result count

Guide

MultiSelect

Tags inside the field · Backspace removes · max

Guide

FileUpload

Dropzone · button · progress · errors · retry

Guide

Date

Calendar

Keyboard grid · today · selected · disabled dates

Guide

DatePicker

Field + popover calendar

Guide

Data display

Badge

Tones · solid/subtle/outline · dot · count

Guide

Tag

Removable · selectable filter chips · hues

Guide

Avatar

Illustrated · initials · fallback · sizes · status · group

Guide

Card

Outline · elevated · filled · clickable · actions · footer

Guide

Divider

Horizontal · vertical · labelled

Guide

List

Icons · avatars · meta · actionable rows

Guide

Table

Caption · sortable · striped · status cells

Guide

Media

Icon

Ionicons 8 · outline + filled · 16/20/24/32

Guide

Image

Ratios · radius · fallback on error

Guide

Feedback

Alert

Info · success · warning · danger · neutral · dismissible

Guide

Toast

Neutral · success · danger with action · stacking

Guide

Tooltip

Hover and focus; Esc to hide

Guide

Spinner

Sizes; pulses under reduced motion

Guide

ProgressBar

Determinate · indeterminate · success · danger

Guide

Skeleton

Text · rect · circle; static under reduced motion

Guide

EmptyState

Errors · empty · success · onboarding with illustrations

Guide

BlockLoader

Module Aa brand loader · sizes · inverse

Guide

Overlays

Modal

Dialog and alertdialog; focus trap, Esc, scroll lock

Guide

Drawer

Side panel for filters and secondary tasks

Guide

BottomSheet

Mobile sheet with handle and actions

Guide

Menu

Actions dropdown: arrows, type-ahead, danger item

Guide

Tabs

Line · contained · icons · badge · disabled

Guide

Accordion

Divided · contained · single or multiple

Guide

Breadcrumbs

Chevron/slash · collapsed middle · current page

Guide

Pagination

Known total · page size · unknown total

Guide

Stepper

Horizontal · vertical · complete/current/error

Guide

NavBar

Web top bar and mobile app bar

Guide

TabBar

Mobile bottom navigation, 3–5 items

Guide

Assets

Logo, icons, illustrations and avatars

Module Aa logo

Horizontal logo
Symbol
Reversed logo

Icons: Ionicons 8

Illustrations

error-404
error-500
error-access-denied
error-offline
empty-cart
empty-data
empty-inbox
empty-notifications
empty-search
success-account
success-done
success-payment
onboarding-maintenance
onboarding-permission
onboarding-welcome

Avatars

Illustrated avatar 1Illustrated avatar 2Illustrated avatar 3Illustrated avatar 4Illustrated avatar 5Illustrated avatar 6Illustrated avatar 7Illustrated avatar 8

Guides

Read the rules