ドキュメント

m3-baseui は Base UI をベースに Material Design 3 を実装した React コンポーネントライブラリです。 vanilla-extract と Tailwind CSS v4 の 2 エンジンに drop-in 互換で対応し、動的配色とアクセシビリティを備えています。

クイックスタート

目的に応じて次のページから読み進めてください。

アーキテクチャ

4 レイヤー構成です。上から順にデータと依存が流れ、Layer 2 の --md-sys-* CSS 変数が エンジン非依存の境界線になります。React ロジックは @m3-baseui/core に一元化されています。

1 Behavior Base UI — a11y / フォーカス / キーボード / data-* 2 Token --md-sys-* CSS 変数(単一ソース) エンジン非依存の境界線 3 Styling Tailwind v4 / vanilla-extract のクラス解決器 4 Theme ThemeProvider / 動的配色(HCT)
Layer 2(Token)を境に、上の Behavior は共通、下の Styling がエンジン別に切り替わります。
1

Behavior

Base UI が a11y / フォーカス / キーボード / data-* 状態を担当

2

Token

@m3-baseui/tokens が単一ソース → --md-sys-* CSS 変数を生成(エンジン非依存の境界線)

3

Styling

Tailwind v4 または vanilla-extract のクラス解決器。出力 DOM は同一

4

Theme

ThemeProvider が動的配色(HCT)でスキームを解決

drop-in 互換

2 つのエンジンはコンポーネント API・出力 DOM・data-* 属性がすべて同一です。 import パスを差し替えるだけで入れ替えられます。

react-tailwind tailwind-variants react-vanilla-extract VE recipes 同一 DOM + 同一 data-* Ripple / slot / tokens は共通