LiquidGlassKit
SwiftUI için Liquid Glass yüzeyleri ve kontrolleri: OS 26'da native glass, iOS 17'ye kadar Material yedeği.
Lisans: MIT
Liquid Glass görünümünü isteyen ama bu API'nin olmadığı sistemleri de destekleyen uygulamalar için bir SwiftUI paketi. iOS, macOS, tvOS ve watchOS 26'da SwiftUI'ın native glassEffect'iyle çiziyor; daha eski sürümlerde ve visionOS'ta tint, kenar highlight'ı ve gölgeyle bir Material blur çiziyor. Bütün bileşenler tek bir modifier'ın, glassSurface'in üstüne kurulu; tema, rendering path ve Reduce Transparency tek yerde yönetiliyor. Üçüncü taraf bağımlılığı yok.
Özellikler
- Tek modifier, iki path: glassSurface native glass ile Material yedeği arasında çalışma anında seçiyor, glassRenderingMode(.fallback) her yerde tek görünümü zorluyor
- Hazır kontroller: butonlar, switch stili, slider, kartlar, metin alanları, arama çubuğu, aksiyon butonlu ve badge'li yüzen tab bar, navigation bar ve alt sheet
- Her iki rendering path'te gradient tint'li glass ve animasyonlu shimmer, pulse, breathe highlight'ları
- Tüm görünüm hiyerarşisi için GlassTheme, GlassPreset'te 14 hazır tema ve ayarlanan temayı Swift koduna çeviren GlassCodeExporter
- Erişilebilirlik: yedek çizim Reduce Transparency'de opak zemin, Increase Contrast'ta belirgin kenar çiziyor; Reduce Motion'da highlight yok, switch ve slider'da SwiftUI'ın kendi VoiceOver davranışı
- SwiftUI'ın glassEffect, GlassEffectContainer ve GlassButtonStyle adlarıyla çakışma yok; iki modül aynı dosyada import edilebiliyor
- Offscreen piksel kontrolleri içeren Swift Testing suite'leri; CI'da macOS, iOS 26 simülatörü ve iOS 18.6 simülatöründe koşuyor
Hızlı Başlangıç
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}Kurulum
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]Ekran Görüntüleri







Zaman Çizelgesi
Repo açıldı; v1.0.0 tag'i derlenmeyen ilk commit'i gösteriyor
Sadeleştirme: kaynağın çoğu silinip yerine yer tutucular kondu; testler derlenmiyordu ve CI bunu continue-on-error ile gizliyordu
Swift 6 için 2.0.0 olarak yeniden kuruldu (PR #5): native ve Material path'li glassSurface, Swift Testing, DocC ve demo uygulaması
2.1.0 (PR #7): LiquidGlass-Playground ve GlassmorphismUI'dan yeniden yazılan kontroller, efektler, temalar ve kod dışa aktarıcı; iki repo arşivlendi