mcpField
M
material-3-expressive

material-3-expressive

github.com/albermonteDesign & UI11506 installsUpdated 6d ago
Repository

About material-3-expressive

Material 3 Expressive is a skill for designing and reviewing Android UI/UX with component guidance and token references. It structures the work around device and window classes, expressive intensity, accessibility, and motion constraints.

Key features

  1. 01Guide Android UI/UX design reviews
  2. 02Provide component and token references
  3. 03Adapt guidance to device and window classes
  4. 04Address accessibility and reduced motion
  5. 05Organize references by need

Use cases

  1. 01Designing Android dialogs, sheets, or toolbars
  2. 02Reviewing layouts for tablets or foldables
  3. 03Checking motion and accessibility requirements

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/albermonte/android-skills --skill material-3-expressive

After installing, type/material-3-expressivein Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

agents/
openai.yaml
assets/examples/ui/
ExpressiveAntiPatterns.kt
ExpressiveButtonComparison.kt
ExpressiveHomeScreen.kt
assets/examples/ux/
expressive-ux-brief-template.md
references/
android-ui-design-hub.md
compose-mapping.md
expressive-catalog.md
expressive-research.md
m3-app-bars-specs-tokens.md
m3-app-bars.md
m3-bottom-sheets-specs-tokens.md
m3-button-groups-specs-tokens.md
m3-button-groups.md
m3-buttons-specs-tokens.md
m3-buttons.md
m3-carousel-specs-tokens.md
m3-carousel.md
m3-color-foundation-tokens.md
m3-color-system.md
m3-component-token-output-template.md
m3-dialogs-specs-tokens.md
m3-dialogs.md
m3-elevation-specs-tokens.md
m3-elevation.md
m3-expressive-blog.md
m3-expressive-components.md
m3-expressive-guidelines.md
m3-expressive-specs-tokens-index.md
m3-extended-fab-specs-tokens.md

Details

From the project README

Material 3 Expressive (Android UI/UX)

Overview

Design and review Android UI/UX using Material 3 Expressive. Prioritize component-token requests for dialogs, sheets, modals, toolbars, and buttons, with guidance plus token references by default.

Intake Questions

  • Target device class (phone, tablet, foldable, Wear OS)
  • Window size class (Compact, Medium, Expanded)
  • Brand constraints and dynamic color usage
  • Primary action(s) and desired hero moments (1-2 max)
  • Motion constraints and reduced-motion expectations
  • Accessibility targets (contrast, touch target)

Default Assumptions

  • Intensity level: Foundational
  • Window size class: Compact
  • Dynamic color: enabled
  • Standard navigation patterns preserved

Quick Workflow

  1. Confirm intensity level + hero moments
  2. Confirm device class + window size class
  3. Load Tier 1 index and output template
  4. Load component overview + token spec files
  5. If theming needed, load Tier 3 foundation tokens
  6. Output: guidance + token refs (see template)

Default Output Format (Guidance + Token Refs)

Use references/m3-component-token-output-template.md verbatim as the base output shell.

  • Context and intent (1-2 lines)
  • Intensity level + hero moments (count + location)
  • Window size class + device class
  • Component + variant
  • Token references: file paths + token groups to use (quote minimal key values only if needed)
  • Compose mapping reference (optional): references/compose-mapping.md
  • Behavior or interaction constraints (from overview)
  • Reduced-motion fallback note
  • Accessibility and performance checks
  • Optional: Compose mapping notes

Expressive Tactics

LeverApplication
Shape contrastBold corners on primary, subtle on secondary
Rich colorPrimary/secondary containers for emphasis
Type hierarchySize + weight variation
MotionShape morph on press/select

Constraint: Max 1-2 hero moments per flow

Expressive Intensity Levels

  • Foundational: Clarity and familiarity first
  • Excellent: Stronger color, type, and shape while preserving patterns
  • Transformative: Bold layouts and motion with strict usability and accessibility

Common Mistakes

MistakeFix
Removing text labels for "cleaner" lookKeep labels; usability drops without them
Too many hero moments per screenLimit to 1-2 per flow
Breaking navigation patternsPreserve standard nav behaviors
No reduced-motion fallbackHonor system animation scale; provide reduced-motion or instant transitions when animation scale is 0
Hardcoding token valuesUse semantic tokens (md.sys.color.*)
Ignoring window size classesTest Compact, Medium, Expanded

Android-Specific Guidance

  • Preserve navigation and component behaviors
  • Keep touch targets generous and platform-consistent
  • Honor system animation scale; provide reduced-motion alternatives or instant transitions when animation scale is 0
  • Apply window size classes for tablets and foldables

Review Checklist

Hierarchy
  • Primary action identifiable within 2 seconds
  • Max 1-2 hero moments per screen
  • Labels preserved on all interactive elements
Accessibility
  • Color contrast: 4.5:1 text, 3:1 non-text
  • Touch targets: 48dp minimum
  • Motion: reduced-motion alternative provided
  • Screen reader: content descriptions present
Expressive Compliance
  • Intensity level consistent across feature
  • Standard patterns preserved
  • Dynamic color tokens used
  • Window size classes tested

Reference Tiers (Load in Order of Need)

Tier 1: Always Load First
NeedFile
Component token lookupreferences/m3-expressive-specs-tokens-index.md
Output format templatereferences/m3-component-token-output-template.md
New/updated componentsreferences/m3-expressive-components.md
Tier 2: Component-Specific (Load When Requested)
ComponentOverviewTokens
Buttonsm3-buttons.mdm3-buttons-specs-tokens.md
Button Groupsm3-button-groups.mdm3-button-groups-specs-tokens.md
Dialogsm3-dialogs.mdm3-dialogs-specs-tokens.md
Sheetsm3-sheets.mdm3-bottom-sheets-specs-tokens.md / m3-side-sheets-specs-tokens.md
Toolbarsm3-toolbars.mdm3-toolbars-specs-tokens.md
FABsm3-fabs.mdm3-fabs-specs-tokens.md
Extended FABm3-extended-fab.mdm3-extended-fab-specs-tokens.md
FAB Menum3-fab-menu.mdm3-fab-menu-specs-tokens.md
Icon Buttonsm3-icon-buttons.mdm3-icon-buttons-specs-tokens.md
Split Buttonm3-split-button.mdm3-split-button-specs-tokens.md
Navigation Barm3-navigation-bar.mdm3-navigation-bar-specs-tokens.md
Navigation Railm3-navigation-rail.mdm3-navigation-rail-specs-tokens.md
App Barsm3-app-bars.mdm3-app-bars-specs-tokens.md
Carouselm3-carousel.mdm3-carousel-specs-tokens.md
Progress Indicatorsm3-progress-indicators.mdm3-progress-indicators-specs-tokens.md
Loading Indicatorm3-loading-indicator.mdm3-loading-indicator-specs-tokens.md
Tier 3: Foundation Tokens (Load for Theming)
FoundationFile
Color systemm3-color-system.md, m3-color-foundation-tokens.md
Typographym3-typography.md, m3-typography-foundation-tokens.md, m3-typography-fonts.md, m3-typography-type-scale-tokens.md
Shapem3-shape.md, m3-shape-foundation-tokens.md, m3-shape-corner-radius-scale.md, m3-shape-morph.md
Motionm3-motion-physics.md, m3-motion-foundation-tokens.md, m3-motion-specs.md
Elevationm3-elevation.md, m3-elevation-specs-tokens.md
Statem3-state-foundation-tokens.md
Tier 4: Evidence & Research (Load for Justification)
ResourceFile
Research findingsreferences/expressive-research.md
Testing guidancereferences/m3-testing-material-3.md
Expressive blogreferences/m3-expressive-blog.md
Expressive guidelinesreferences/m3-expressive-guidelines.md
UX articlereferences/medium-ux-article.md
Tier 5: Wear OS (Load Only for Wearables)
ResourceFile
Benefitsreferences/wear-expressive-benefits.md
Levels of expressionreferences/wear-levels-of-expression.md
Design languagereferences/wear-expressive-design-language.md
Blogreferences/wear-expressive-blog.md
Compose Material3references/wear-compose-material3.md
Supporting Resources
ResourceFile
Android UI design hubreferences/android-ui-design-hub.md
Expressive catalogreferences/expressive-catalog.md
Compose mappingreferences/compose-mapping.md

Maintenance

  • Refresh references with skills/material-3-expressive/scripts/update_m3_expressive_refs.py.
  • Requires Playwright and Chromium (.venv/bin/python -m playwright install chromium if needed).
  • CI runs weekly; local runs are for urgent changes.

Search Tips

  • Find a token prefix: rg "md.comp.button" skills/material-3-expressive/references/m3-buttons-specs-tokens.md
  • Find navigation tokens: rg "md.comp.navigation" skills/material-3-expressive/references/m3-.*navigation.*.md

Examples

  • Use assets/examples/ui/ExpressiveHomeScreen.kt as a Compose starting point
  • Use assets/examples/ui/ExpressiveButtonComparison.kt to see standard vs expressive button differences
  • Use assets/examples/ui/ExpressiveAntiPatterns.kt to learn common mistakes to avoid
  • Use assets/examples/ux/expressive-ux-brief-template.md to draft an expressive UX brief
  • Examples are illustrative; adapt sizes/colors to expressive tokens and project constraints.

Comments

Markdown supported