Skip to content

Releases: HoYeonPark1221/LiquidGlassEffects

0.2.0: any Shape, 53 subvariants, GlassLab playground

Choose a tag to compare

@HoYeonPark1221 HoYeonPark1221 released this 02 Oct 01:52

macOS has 24 Liquid Glass materials. .glassEffect gives you two. 0.2.0 makes the rest easy to use.

A glass panel tours several variants and shapes

Highlights

  • Any Shape: .privateGlassBackground(.bubbles, in: Star()). Rectangles and capsules use the glass view's corner radius; everything else goes through the private _setPath:.
  • All 53 subvariant names from Apple's table on macOS 27.2, and any other string works too.
  • tint: and isInteractive: (interactive glass needs macOS 27).
    • GlassLab, a playground for every variant: run swift run in Examples/GlassLab, or download GlassLab.zip below (ad-hoc signed, so on first launch use System Settings > Privacy & Security > Open Anyway).
  • The content now goes into NSGlassEffectView.contentView, and the container sizes itself from it.
  • CI on macOS 26 (real glass) and macOS 15 (blur fallback).

Breaking changes

  • GlassSubvariant is a struct, not an enum. Static members like .lockscreenControls still work, rawValue is a String, and switch over its cases no longer compiles.
  • GlassSubvariant.track is deprecated: it is not in Apple's name table.
  • The unverified integer fallback for set_subvariant: is gone.
  • GlassVariantBridge is @MainActor.

Private API: apps using this will likely be rejected from the Mac App Store.

Full list: CHANGELOG.md

0.1.0: Initial commit: LiquidGlassEffects

Choose a tag to compare

@HoYeonPark1221 HoYeonPark1221 released this 30 Sep 07:23
SwiftUI access to the 24 Liquid Glass variants and 10 subvariants of
NSGlassEffectView through its private _variant / _subvariant properties.
Runtime calls are signature-checked and fall back to a blur when the
selectors are missing.