Create Apple-inspired modern, minimalist UI designs with glassmorphism, smooth animations, generous whitespace, and elegant typography...
Create stunning, modern UI designs inspired by Apple's design language. This design system provides guidelines, components, and patterns for building clean, minimalist interfaces with attention to detail, smooth animations, and premium aesthetics.
Use this skill when:
Minimalism: Remove unnecessary elements, focus on content Typography: Large, bold headlines with system fonts Colors: Neutral base with strategic accent colors Spacing: 8px grid system with generous whitespace Effects: Glassmorphism, soft shadows, smooth animations Imagery: High-quality, properly sized images
📖 Detailed guide: design-principles.md
/* Light Mode */
:root {
--bg-primary: #ffffff;
--bg-secondary: #f5f5f7;
--text-primary: #1d1d1f;
--text-secondary: #86868b;
--accent-blue: #0071e3;
--accent-green: #30d158;
--border-color: rgba(0, 0, 0, 0.1);
}
/* Dark Mode */
@media (prefers-color-scheme: dark) {
:root {
--bg-primary: #000000;
--bg-secondary: #1d1d1f;
--text-primary: #f5f5f7;
--text-secondary: #a1a1a6;
--accent-blue: #0a84ff;
--border-color: rgba(255, 255, 255, 0.1);
}
}
📖 Complete palette: color-system.md
/* System font stack */
font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display',
'Segoe UI', sans-serif;
/* Fluid responsive typography */
h1 {
font-size: clamp(2.5rem, 5vw + 1rem, 4.5rem);
font-weight: 700;
line-height: 1.1;
letter-spacing: -0.02em;
}
p {
font-size: 1rem;
line-height: 1.6;
}
📖 Typography system: typography-system.md
Use 8px-based spacing scale:
:root {
--space-2: 0.5rem; /* 8px */
--space-4: 1rem; /* 16px */
--space-6: 1.5rem; /* 24px */
--space-8: 2rem; /* 32px */
--space-12: 3rem; /* 48px */
--space-16: 4rem; /* 64px */
--space-24: 6rem; /* 96px */
}
<section class="hero">
<div class="hero-content">
<h1 class="hero-title">
Hi, I'm <span class="gradient-text">Your Name</span>
</h1>
<p class="hero-subtitle">Developer creating amazing experiences</p>
<div class="hero-actions">
<button class="btn btn-primary">View Work</button>
<button class="btn btn-secondary">Contact</button>
</div>
</div>
</section>
.glass-card {
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
border: 1px solid rgba(255, 255, 255, 0.2);
border-radius: 20px;
padding: 2rem;
box-shadow:
0 8px 32px rgba(0, 0, 0, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}
.project-card {
border-radius: 24px;
overflow: hidden;
background: var(--bg-secondary);
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.project-card:hover {
transform: translateY(-8px);
box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12);
}
.navbar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1000;
background: rgba(255, 255, 255, 0.8);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.btn {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.875rem 1.75rem;
border-radius: 980px;
font-weight: 500;
border: none;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
min-height: 44px;
}
.btn-primary {
background: var(--accent-blue);
color: white;
}
.btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(0, 113, 227, 0.3);
}
.btn-secondary {
background: transparent;
color: var(--accent-blue);
border: 2px solid var(--accent-blue);
}
.btn-secondary:hover {
background: var(--accent-blue);
color: white;
}
📖 All components: components-reference.md
/* Lift effect */
.hover-lift {
transition: transform 300ms ease, box-shadow 300ms ease;
}
.hover-lift:hover {
transform: translateY(-4px);
box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12);
}
/* Image zoom */
.image-zoom {
transition: transform 600ms ease;
}
.card:hover .image-zoom {
transform: scale(1.05);
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.animate-fade-in-up {
animation: fadeInUp 600ms ease-out;
}
📖 Animation patterns: animation-guide.md
When this skill is activated for Apple-inspired design:
When users need detailed information, direct them to:
Ready-to-use templates in ../../../.shared/skills/apple-design/templates/ folder:
hero-section.html - Full-screen hero with gradientproject-card.html - Project showcase cards with hover effectsPre-built examples in ../../../.shared/skills/apple-design/examples/ folder:
color-palette.css - Complete color system with utilitiesanimations.css - Animation library with all patternstransform and opacitywill-change sparinglybackdrop-filter usagewidth, height, top, leftprefers-reduced-motionclamp() for fluid typographyauto-fit or auto-fill--shadow-sm: 0 1px 2px rgba(0,0,0,0.04), 0 1px 4px rgba(0,0,0,0.04);
--shadow-md: 0 4px 12px rgba(0,0,0,0.08);
--shadow-lg: 0 8px 24px rgba(0,0,0,0.08), 0 16px 32px rgba(0,0,0,0.08);
--shadow-xl: 0 24px 48px rgba(0,0,0,0.12);
--radius-sm: 8px;
--radius-md: 12px;
--radius-lg: 16px;
--radius-xl: 20px;
--radius-2xl: 24px;
--radius-full: 9999px;
--duration-fast: 150ms; /* Micro-interactions */
--duration-base: 300ms; /* Standard transitions */
--duration-slow: 500ms; /* Complex animations */
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
--ease-out: cubic-bezier(0, 0, 0.2, 1);
--ease-in: cubic-bezier(0.4, 0, 1, 1);
Remember: Apple's design philosophy is about removing the unnecessary to let the essential shine. Every element should serve a purpose. Keep it simple, elegant, and focused on the user's needs.