# Material 3 references This page maps the most useful upstream Material 3 references to the corresponding areas of `qt-material3-widget`. These links are **design-system references**, not the project API reference. Use them to understand Material semantics, token naming, and component behavior. Then use this repository’s own guides and generated C++ API pages to see how those ideas are implemented in Qt. ## Start here - Material 3 get started: - Material 3 styles overview: - Material 3 usability foundations: - Material customization: ## Theme and design tokens ### Color Use these pages when working with `ThemeOptions`, `Theme`, `ColorScheme`, and color-role mapping in widgets. - Color overview: - Color roles: - How the color system works: - Choosing a color scheme: - Static and branded color guidance: ### Typography Use these pages when working with `TypographyScale`, `TypographyStyle`, and text hierarchy in components. - Typography overview: - Type scale tokens: - Applying type: - Fonts: ### Shape Use these pages when working with `ShapeScale` and component corner-radius decisions. - Shape overview: - Corner radius scale: ### Motion Use these pages when working with `MotionTokens`, transitions, and interaction timing. - Motion overview: - Motion specifications: - Easing and duration: - Transitions: ## Components Use these pages to cross-check component family behavior when designing or reviewing widgets. - Buttons overview: - Cards specs: Add more component-specific links here as new widget families mature. ## How to use these references in this repository A practical rule of thumb: - use **Material 3 docs** for visual semantics, token meaning, and interaction expectations - use **`docs/public-api/*`** for package-level guidance - use **`docs/api/index.md`** for exact C++ classes and members ## Documentation policy suggestion When a Qt API page claims that a class implements a Material 3 behavior, add one upstream Material 3 reference link near the top of the page. That keeps the project docs grounded in the design system without replacing the project’s own responsibility to document its public API.