liquid-glass_skill

This skill helps you implement Liquid Glass UI in SwiftUI using the glassEffect API for modern, interactive, and morphing designs.
  • Swift

56

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill rshankras/claude-code-apple-skills --skill liquid-glass

  • SKILL.md21.9 KB

Overview

This skill implements Apple's Liquid Glass design language with the modern .glassEffect() API for iOS and macOS 16+. It provides ready-to-use SwiftUI modifiers, container views, button styles, and AppKit helpers to create glass, tint, and morphing UI effects. Use it to build modern, transparent, interactive interfaces with smooth transitions.

How this skill works

The skill exposes SwiftUI modifiers like .glassEffect(in:), .glassEffect(.regular.tint(_:)), .interactive(), plus GlassEffectContainer and glassEffectUnion/ID APIs for grouping and morphing. It also includes AppKit equivalents (NSGlassEffectView and NSGlassEffectContainerView) for macOS. Effects blend and animate when grouped, and glassEffectID with @Namespace enables fluid morphing between view states.

When to use it

  • When you need glass/blur backgrounds and translucent controls
  • To add interactive, touch- or hover-reactive UI elements
  • When you want morphing transitions between views using glassEffectID and @Namespace
  • To replace old material-based backgrounds (.background(.material)) with a modern API
  • When grouping multiple glass elements for performance and blending

Best practices

  • Wrap multiple glass elements in GlassEffectContainer to improve rendering and enable proper blending
  • Apply .glassEffect() last in the modifier chain after frame, padding, and layout modifiers
  • Pick consistent shapes (capsule, rect with cornerRadius, or circle) to maintain a cohesive shape language
  • Use glassEffectID with a shared @Namespace for smooth morphing transitions and animate state changes
  • Add .interactive() to touchable elements and use .tint(Color) to signal selection or importance
  • Adjust GlassEffectContainer spacing to control when effects merge; smaller spacing merges sooner

Example use cases

  • Floating action bars with interactive glass buttons that morph into expanded state
  • Card components with tinted glass backgrounds and consistent corner radii
  • Tab bars that animate selection by tinting and using glassEffectID for morphing
  • Toolbars or tool palettes that reveal/hide items and smoothly morph using @Namespace
  • AppKit windows using NSGlassEffectView for sidebar or inspector glass panels

FAQ

Wrap them in GlassEffectContainer and tune its spacing; use glassEffectUnion or shared IDs to unify separate effects.

When should I prefer .tint() vs .interactive()?

.tint(Color) is for visual state indication (selected/primary). .interactive() enables touch/hover responses; they can be combined.

Can I migrate from .background(.material) to this API easily?

Yes—replace material backgrounds with .glassEffect(in: .rect(cornerRadius:)) and move corner radius to the shape parameter; add .interactive() and glassEffectID as needed.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
liquid-glass skill by rshankras/claude-code-apple-skills | VeilStrat