liquid-glass
SKILL.md
Liquid Glass Design System
Apple's new material design combining glass optics with fluid interaction. Available across all platforms.
Quick Reference — SwiftUI
// Basic glass effect (capsule shape by default)
view.glassEffect()
// Custom shape
view.glassEffect(in: .rect(cornerRadius: 16))
view.glassEffect(in: .circle)
// Tinted glass (suggests prominence)
view.glassEffect(.regular.tint(.blue))
// Interactive (responds to touch/pointer)
view.glassEffect(.regular.interactive())
// Button styles
Button("Primary") { }.buttonStyle(.glassProminent)
Button("Secondary") { }.buttonStyle(.glass)
// Container for multiple glass views (required for merging/performance)
GlassEffectContainer(spacing: 40) {
HStack(spacing: 40) {
ItemView().glassEffect()
ItemView().glassEffect()
}
}
// Morphing transitions between glass views
@Namespace var ns
view.glassEffect().glassEffectID("myID", in: ns)
// Unite multiple views into single glass shape
view.glassEffect().glassEffectUnion(id: "group1", namespace: ns)
Critical Constraints
- ❌ DO NOT apply multiple glass effects without
GlassEffectContainer→ ✅ Wrap inGlassEffectContainerfor performance and merging - ❌ DO NOT forget
.interactive()on buttons/controls → ✅ Add.interactive()for touch/pointer response - ❌ DO NOT use heavy tint alpha values → ✅ Use subtle tints (0.2–0.3 alpha) for glass aesthetic
- ❌ DO NOT apply
.glassEffect()before layout modifiers → ✅ Apply after.frame(),.padding(), etc. - ❌ DO NOT use old
NSVisualEffectViewwith.materialfor new designs → ✅ UseNSGlassEffectView(AppKit) or.glassEffect()(SwiftUI)
Reference Index
| File | When to Use |
|---|---|
references/swiftui-glass.md |
SwiftUI glass effects, containers, morphing, button styles |
references/appkit-glass.md |
AppKit NSGlassEffectView, NSGlassEffectContainerView, hover effects |
references/uikit-glass.md |
UIKit UIGlassEffect, scroll edge effects, container effects |
references/widgetkit-glass.md |
Widget accented rendering mode, widgetAccentable modifier |
Decision Tree
Building SwiftUI interface?
├── Single glass element → .glassEffect() on the view
├── Multiple glass elements → Wrap in GlassEffectContainer
├── Need morphing transitions → Use @Namespace + .glassEffectID()
├── Grouping elements into one shape → Use .glassEffectUnion()
└── Buttons → .buttonStyle(.glass) or .buttonStyle(.glassProminent)
Building AppKit interface?
├── Single glass element → NSGlassEffectView with contentView
├── Multiple glass elements → NSGlassEffectContainerView
└── Hover/interaction → NSTrackingArea + animator().tintColor
Building Widgets?
├── Support tinted/clear appearance → Check widgetRenderingMode
├── Mark accent content → .widgetAccentable()
└── Custom glass in widget → .glassEffect() (same as SwiftUI)
Common Mistakes & Fixes
| Mistake | Fix |
|---|---|
| Glass views don't merge when close | Wrap in GlassEffectContainer with appropriate spacing |
| No animation when glass appears/disappears | Use withAnimation { } + glassEffectID |
| Glass button doesn't respond to hover | Add .interactive() to the glass effect |
| Too many glass effects = performance drop | Limit glass effects; use GlassEffectContainer |
| Widget looks wrong in tinted mode | Check widgetRenderingMode environment, use widgetAccentable() |
References
Weekly Installs
6
Repository
makgunay/claude…t-skillsFirst Seen
Feb 14, 2026
Security Audits
Installed on
opencode6
codex6
cursor6
gemini-cli5
claude-code5
github-copilot5