OSS Tanbou

build accessible React interfaces with styled Spectrum components or unstyled React Aria primitives

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
15,911
Primary language
TypeScript
License
Apache-2.0
Repository last updated
Oct 3, 2026
On this page

Overview

The React Spectrum repository is a monorepo containing Adobe's styled Spectrum components, unstyled React Aria primitives, React Stately state hooks, and internationalization libraries. It supports both ready-made design-system adoption and custom component systems that reuse accessibility behavior.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Use Adobe's Spectrum design system as React components

React Spectrum implements Adobe Spectrum as React components with a cohesive visual and interaction model.

Sources: [1]

Build custom visual systems on unstyled React Aria primitives

React Aria exposes unstyled components and hooks so teams can keep their own DOM and styling while reusing keyboard, focus, interaction, and ARIA behavior.

Sources: [1]

Cover keyboard, touch, screen readers, and internationalization

The libraries target WAI-ARIA Authoring Practices, keyboard navigation, mouse and touch interaction, more than 30 languages, RTL layouts, and date/number formatting.

Sources: [1]

Best fit

Fits teams that want accessibility built into their design-system foundation

It is useful for internal component libraries, SaaS interfaces, complex forms, and collections where teams do not want to reimplement low-level accessibility behavior for every control.

Sources: [1]

Before adoption

Version packages independently rather than treating the repository as one release

The monorepo publishes many npm packages on independent version lines. Releases on 2026-09-04 included React Aria Components 1.21.0 and React Spectrum S2 1.7.0, while main can move ahead before the next published release.

Sources: [2][3][4][5]

Spectrum S2 and React Aria have different React compatibility ranges

Current package metadata allows React Aria Components across React 16.8 through 19 lines, while Spectrum S2 targets the React 19 line. Choose the library family that matches the host application.

Sources: [4][5]

Accessible primitives do not replace application-level content semantics

The library can supply interaction and ARIA behavior, but application authors still need correct labels, validation messages, semantic content, and product-specific accessibility testing.

Sources: [1]

Official sources

  1. [1]React Spectrum README(2026-10-03)
  2. [2]React Aria Components 1.21.0 release(2026-10-03)
  3. [3]React Spectrum S2 1.7.0 release(2026-10-03)
  4. [4]React Aria Components package(2026-10-03)
  5. [5]React Spectrum S2 package(2026-10-03)
  6. [6]React Spectrum Apache-2.0 license(2026-10-03)
Supplemental curator note

The main advantage is choice: React Spectrum provides Adobe-styled components, while React Aria provides unstyled accessible primitives for custom design systems. Packages are independently versioned, so pin and upgrade the packages you actually adopt rather than treating the repository as one version.

Try it in 3 steps

  1. 1

    Add React Aria Components to an existing React project

    Start with the unstyled package released on 2026-09-04 for a minimal custom-design-system path.

    npm install react-aria-components@1.21.0
  2. 2

    Add an accessible component

    Render <Button>Save</Button> and style it with the application's existing CSS or design tokens.

    import {Button} from 'react-aria-components';
  3. 3

    Verify keyboard interaction

    Check Tab focus and Enter/Space activation. Evaluate React Spectrum/S2 separately when Adobe's finished styling is required.

    npm run dev
Check the official README

Growth

Growth trends · Last 30 days

15,911 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
56
Open PRs
94

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • react
  • accessibility
  • design-systems
  • react-components
  • wai-aria
  • ui-components
Stars
15,911
Forks
1,590
Watchers
77
Open issues
509
Contributors
410
Owner type
Organization
Primary language
TypeScript
License
Apache-2.0
Repository last updated
Oct 3, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?