About these pieces

One self-contained Swift file each, Apple frameworks only, from iOS 17.

Liquid Glass arrived with iOS 26 and the API is small: glassEffect, GlassEffectContainer and glassEffectID. The hard parts are around it: gating every call with #available, grouping sibling glass in one container so it can morph, and designing the fallback that most of your users will still see.

Glass Surface is the foundation: glass in a capsule, rect, circle or concentric shape, with a layered Material fallback that keeps the press response and specular edge. Glass Segments is a segmented control whose indicator you can grab and drag. Glass Action Menu long-presses open into actions you slide across and release to fire. Floating Dock and Glass Text also use glass on iOS 26.

Learn the technique: Liquid Glass guide.

Questions

How the pieces work, and how to build the same thing yourself. Every piece's page has its full notes.

Does Liquid Glass work on iOS 17 or 18?

No. glassEffect is iOS 26 only. Every glass piece here gates it with #available(iOS 26, *) and falls back to a Material surface on earlier versions, so the same file builds and runs from iOS 17.

What is GlassEffectContainer for?

It renders sibling glass views as one layer, so their shapes blend when close and can morph into each other with glassEffectID. Without it, glass samples glass and the result looks muddy.

Is .liquidGlass a real SwiftUI modifier?

No. Modifiers like .liquidGlassUltra or .fill(.liquidGlass) appear in tutorials but do not exist. The real surface is glassEffect(_:in:), Glass.regular, .clear and .identity, GlassEffectContainer, glassEffectID and the .glass button styles.

Next

Ready to build something better?

55 pieces, one file each, yours to keep. Start with the library or see what the whole app looks like.