Skip to content
Skillpedia
Interfaces (UI/UX)48k · #2791

material-design

Helps your agent apply the Material Design style. It's useful for creating interfaces with Google's aesthetic, consistent components, and smooth animations.

What it does

This guide helps create app and website interfaces following Google's visual style, known as Material Design. It's based on concepts like layers (shadows), motion, and standardized components.

When to use it

  • ✓When you want your app or website to have the Google look and feel.
  • ✓When creating a design that uses shadows to show hierarchy.
  • ✓If you need animations that smoothly guide the user.

Example of what to ask your AI

“Create a button in the Material Design style.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/design-it/material-design/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/design-it/material-design/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

Material Design uses 'digital paper' with shadows to create a sense of depth. It also defines how colors, fonts (like Roboto), and shapes should be used to create a consistent experience.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill material-design

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/design-it/material-design/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Material Design

"Digital paper and ink. Interfaces built on the physical properties of stacked material."

When to Use

Use this sub-style when the user's request matches the aesthetic described above. This is a child reference of the design-it skill and is not meant to be triggered directly.

Core Principles

  1. Z-Axis Elevation: Everything exists on a specific layer. Shadows communicate hierarchy and state.
  2. Meaningful Motion: Animations are continuous, guiding the user's focus from one state to the next (e.g., ripple effects, shared element transitions).
  3. Structured Layout: Strict adherence to an 8dp baseline grid and specific component anatomies (cards, FABs, app bars).

Visual DNA

  • Colors: Works excellently with Desert Mirage or Minimalist Slate. Utilize primary, secondary, surface, and error semantic mapping.
  • Typography: Roboto or Google Sans (or equivalent clean geometric sans). Stick strictly to the Material Type Scale (H1-H6, Subtitle, Body, Caption, Overline).
  • Shapes: Moderately rounded corners (4px to 16px).

Web Implementation

  • Do not reinvent the wheel: mimic standard Material elevations.
  • CSS Example:
.material-card {
  background: var(--bg-surface);
  border-radius: 8px;
  padding: 16px;
  /* Material Elevation 2 */
  box-shadow: 0 3px 1px -2px rgba(0,0,0,0.2), 
              0 2px 2px 0 rgba(0,0,0,0.14), 
              0 1px 5px 0 rgba(0,0,0,0.12);
  transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.material-btn {
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 1.25px;
  padding: 0 16px;
  height: 36px;
  border-radius: 4px;
  background: var(--cta-highlight);
  color: #fff;
  border: none;
  /* Ripple effect is usually handled via JS, but structure is key */
}

App Implementation

SwiftUI

struct MaterialCard: View {
    var body: some View {
        VStack(alignment: .leading, spacing: 12) {
            Text("Material Card")
                .font(.system(size: 20, weight: .medium))
            Text("Digital paper and ink. Shadows communicate where this surface sits.")
                .font(.system(size: 14))
                .foregroundColor(.secondary)
            HStack {
                Spacer()
                Button("ACTION") {}
                    .font(.system(size: 14, weight: .medium))
                    .foregroundColor(.accentColor)
                    .padding(.horizontal, 12)
                    .padding(.vertical, 8)
            }
        }
        .padding(16)
        .background(Color(.systemBackground))
        .cornerRadius(8)
        // Material Elevation 2 equivalent
        .shadow(color: Color.black.opacity(0.12), radius: 3, x: 0, y: 1)
        .shadow(color: Color.black.opacity(0.08), radius: 2, x: 0, y: 2)
    }
}

// Material FAB
struct MaterialFAB: View {
    var body: some View {
        Button(action: {}) {
            Image(systemName: "plus")
                .font(.system(size: 24))
                .foregroundColor(.white)
                .frame(width: 56, height: 56)
                .background(Color.accentColor)
                .cornerRadius(16)
                .shadow(color: Color.black.opacity(0.2), radius: 6, x: 0, y: 3)
                .shadow(color: Color.black.opacity(0.14), radius: 4, x: 0, y: 2)
        }
    }
}
  • Emulate Material elevation levels by stacking multiple .shadow() modifiers at different blur/offset values.
  • Use .cornerRadius(8...16) — Material Design 3 uses more rounded shapes than M2.
  • Animate shadow changes using .animation(.easeInOut(duration: 0.28)) — Material uses 280ms transitions.

Flutter

// Flutter IS Material Design — use it natively
class MaterialScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        useMaterial3: true,
        colorSchemeSeed: const Color(0xFF6750A4), // Material You seed
        // Map your universal palette here
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Material Design'),
          // M3 appbar elevation is 0 by default, scrolled = 3
        ),
        body: Padding(
          padding: const EdgeInsets.all(16),
          child: Card(
            elevation: 2,
            shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)),
            child: Padding(
              padding: const EdgeInsets.all(16),

…
FAQ

What is 'Z-Axis Elevation'?

It's the idea that elements on the screen have different 'heights' or 'layers', indicated by shadows. This helps show what's most important.

What is 'Meaningful Motion'?

These are animations used to guide the user's eye from one point to another, like a 'ripple' effect when you click something.

What is 'Structured Layout'?

It's a set of rules for organizing elements on the screen, using a grid and predefined components like cards and floating action buttons, to ensure consistency.

Details

Original description by the author

Web and App implementation guide for Material Design. Trigger when user wants Google's aesthetic, elevation, motion, and consistent components.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#2791
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills