LiquidGlassKit
Liquid-Glass-Oberflächen und -Controls für SwiftUI: natives Glas auf OS 26, ein Material-Fallback bis iOS 17.
Lizenz: MIT
Ein SwiftUI-Package für Apps, die Liquid Glass nutzen wollen, aber weiterhin Systeme ohne diese API unterstützen. Auf iOS, macOS, tvOS und watchOS 26 zeichnet es mit SwiftUIs nativem glassEffect; auf früheren Versionen und auf visionOS zeichnet es einen Material-Blur mit Tönung, Kanten-Highlight und Schatten. Jede Komponente baut auf einem einzigen Modifier auf, glassSurface, sodass Theme, Rendering-Pfad und Reduce Transparency an einer Stelle gehandhabt werden. Keine Drittanbieter-Abhängigkeiten.
Funktionen
- Ein Modifier, zwei Pfade: glassSurface wählt zur Laufzeit natives Glas oder den Material-Fallback, und glassRenderingMode(.fallback) erzwingt überall denselben Look
- Fertige Controls: Buttons, ein Switch-Style, ein Slider, Cards, Textfelder, eine Suchleiste, eine schwebende Tab-Bar mit Action-Button und Badges, eine Navigation-Bar und ein Bottom Sheet
- Gradient-getöntes Glas sowie animierte Shimmer-, Pulse- und Breathe-Highlights auf beiden Rendering-Pfaden
- GlassTheme für eine gesamte View-Hierarchie, 14 Presets in GlassPreset und GlassCodeExporter, um ein angepasstes Theme zurück in Swift zu verwandeln
- Barrierefreiheit: Der Fallback zeichnet bei Reduce Transparency einen deckenden Hintergrund und bei Increase Contrast eine stärkere Kante, bei Reduce Motion keine Highlights, für Switch und Slider gilt SwiftUIs eigenes VoiceOver-Verhalten
- Keine Namenskollisionen mit SwiftUIs glassEffect, GlassEffectContainer oder GlassButtonStyle, sodass beide Module in einer Datei importiert werden können
- Swift-Testing-Suites mit Offscreen-Pixelprüfungen, die in der CI auf macOS, einem iOS-26-Simulator und einem iOS-18.6-Simulator laufen
Schnellstart
1import LiquidGlassKit2import SwiftUI3 4struct ContentView: View {5 var body: some View {6 ZStack {7 LinearGradient(colors: [.indigo, .pink], startPoint: .top, endPoint: .bottom)8 .ignoresSafeArea()9 VStack(spacing: 16) {10 GlassCard {11 Label("Hello, glass", systemImage: "sparkles")12 }13 GlassButton("Tap me", systemImage: "hand.tap") {}14 }15 }16 }17}Installation
Swift Package Manager (Xcode)
1https://github.com/muhittincamdali/LiquidGlassKit.gitSwift Package Manager (Package.swift)
1dependencies: [2 .package(url: "https://github.com/muhittincamdali/LiquidGlassKit.git", from: "2.1.0")3],4targets: [5 .target(name: "YourApp", dependencies: [6 .product(name: "LiquidGlassKit", package: "LiquidGlassKit")7 ])8]Screenshots







Zeitleiste
Repository eröffnet; der Tag v1.0.0 zeigt auf den ersten Commit, der sich nicht bauen lässt
Vereinfachung: Der größte Teil des Quellcodes wurde entfernt und durch Platzhalter ersetzt; die Tests kompilierten nicht, und die CI verschleierte dies mit continue-on-error
Für Swift 6 als 2.0.0 neu aufgebaut (PR #5): glassSurface mit nativem und Material-Pfad, Swift Testing, DocC und eine Demo-App
2.1.0 (PR #7): Controls, Effekte, Presets und ein Code-Exporter, neu geschrieben aus LiquidGlass-Playground und GlassmorphismUI, die beide archiviert wurden