axiom-codex/skills/axiom-audit-liquid-glass/SKILL.md
Use when the user mentions Liquid Glass review, iOS 26 UI updates, toolbar improvements, or visual effect migration.
npx skillsauth add charleswiltgen/axiom axiom-audit-liquid-glassInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are an expert at identifying Liquid Glass adoption opportunities in SwiftUI codebases for iOS 26+.
Run a comprehensive Liquid Glass adoption audit and report all opportunities with:
Skip: *Tests.swift, *Previews.swift, */Pods/*, */Carthage/*, */.build/*, */DerivedData/*, */scratch/*, */docs/*, */.claude/*, */.claude-plugin/*
Pattern: UIBlurEffect, NSVisualEffectView, .background(.material), .blur()
Opportunity: Migrate to .glassEffect() or .glassBackgroundEffect() for iOS 26+
Note: Keep old effects for iOS 18-25 compatibility if needed
Pattern: Toolbars missing .buttonStyle(.borderedProminent), Spacer(.fixed), or .tint()
Opportunity: Better button grouping and primary action prominence
Fix: Add Spacer(.fixed) for grouping, .borderedProminent + .tint() for primary actions
Pattern: Custom view types (cards, galleries, overlays) without glass effect
Opportunity: Enhanced visual depth with .glassBackgroundEffect()
Variants: Regular (default, reflects content) vs Clear (.glassBackgroundEffect(in: .clear) for media overlays)
Pattern: .searchable() not in NavigationSplitView, missing .tabRole(.search)
Opportunity: Platform-specific bottom-alignment for search
Pattern: Nested views with multiple glass effects Issue: Layering creates visual muddiness Fix: Use glass effects only on outermost container
Pattern: .buttonStyle(.borderedProminent) without .tint()
Opportunity: Add color prominence to important actions
Pattern: Custom buttons with glass effects missing .interactive()
Opportunity: Automatic visual feedback for press states
Regular (default): .glassBackgroundEffect() - subtle tint that reflects content
Clear: .glassBackgroundEffect(in: .clear) - no tint, pure transparency
Use Glob: **/*.swift
Old Blur Effects:
UIBlurEffect, UIVisualEffectViewNSVisualEffectView.blur(, .background(.*MaterialToolbars:
.toolbar {, ToolbarItem, ToolbarItemGroup.borderedProminent for primary actionsSpacer(.fixed) for groupingCustom Views:
struct.*Card|Container|Overlay|Gallery.*: View.glassBackgroundEffect()Search Patterns:
.searchable( placementNavigationSplitView context.tabRole( usageGlass-on-Glass:
.glassEffect() or .glassBackgroundEffect() in nested viewsTinting:
.borderedProminent without .tint(HIGH: Migration from old blur effects, primary action prominence
MEDIUM: Custom views for glass, search placement, glass-on-glass fixes
LOW: Tinting, .interactive() for custom controls
Generate a "Liquid Glass Adoption Audit Results" report with:
If >50 opportunities in one category: Show top 10, provide total count, list top 3 files If >100 total opportunities: Summarize by category, show only HIGH/MEDIUM details
.ultraThinMaterial for iOS 18-25 compatibility.blur() for intentional blur (not backgrounds)For design guidance: axiom-design (skills/liquid-glass.md) skill
For comprehensive API reference: axiom-design (skills/liquid-glass-ref.md) skill
For SwiftUI 26 features: axiom-swiftui skill (iOS 26 reference)
development
Use when building ANY watchOS app — app structure, independent apps, Watch Connectivity, Smart Stack widgets, complications, controls, RelevanceKit, background tasks, ClockKit migration.
development
Use when working with HealthKit, WorkoutKit, health data, workouts, or fitness features on iOS or watchOS. Covers permissions, queries, background delivery, custom workouts, multidevice coordination.
development
Use when building, fixing, or improving ANY SwiftUI UI — views, navigation, layout, animations, performance, architecture, gestures, debugging, iOS 26 features.
content-media
Use when working with camera, photos, audio, haptics, ShazamKit, or Now Playing. Covers AVCaptureSession, PHPicker, PhotosPicker, AVFoundation, Core Haptics, audio recognition, MediaPlayer, CarPlay, MusicKit.