Skip to main content

macOS Liquid Glass effects for PySide6 and PyQt6

Project description

pyqt-liquidglass

PyPI version Python Version License: MIT Documentation

macOS Liquid Glass effects for PySide6 and PyQt6.

Screenshot

Overview

pyqt-liquidglass provides a Python API to apply Apple's native glass visual effects to Qt windows and widgets. On macOS 26+, it uses NSGlassEffectView for Liquid Glass. On older versions, it falls back to NSVisualEffectView.

Features

  • Apply glass effects to entire windows or specific widgets
  • Configure corner radius, padding, and materials
  • Reposition, hide, or show window traffic lights
  • Automatic Qt binding detection (PySide6, PyQt6)
  • Safe no-ops on non-macOS platforms

Installation

pip install pyqt-liquidglass

Or with uv:

uv add pyqt-liquidglass

Quick Start

from PySide6.QtWidgets import QApplication, QMainWindow
import pyqt_liquidglass as glass

app = QApplication([])
window = QMainWindow()
window.resize(800, 600)

# Prepare before showing
glass.prepare_window_for_glass(window)
window.show()

# Apply glass after showing
glass.apply_glass_to_window(window)

app.exec()

Sidebar Pattern

# Apply glass to a sidebar widget
glass.apply_glass_to_widget(sidebar, options=glass.GlassOptions.sidebar())

# Position traffic lights
glass.setup_traffic_lights_inset(window, x_offset=18, y_offset=12)

Custom Options

options = glass.GlassOptions(
    corner_radius=16.0,
    padding=(10, 10, 10, 10),
)
glass.apply_glass_to_window(window, options=options)

Requirements

  • Python 3.12+
  • macOS
  • PySide6 or PyQt6

Tested with PySide6. PyQt6 should work but is not explicitly tested.

Documentation

Full documentation: pyqt-liquidglass.readthedocs.io

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqt_liquidglass-0.1.0.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyqt_liquidglass-0.1.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file pyqt_liquidglass-0.1.0.tar.gz.

File metadata

  • Download URL: pyqt_liquidglass-0.1.0.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyqt_liquidglass-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2b0b5f7f302b70236f653d0362910b9c94898942b8befeb80fb3822625d86fee
MD5 388dabcfc39064e0d88a9738c563f223
BLAKE2b-256 04915d12e7494138a55e807cb09f5297920ce4d84411eb3156aeb068804a75b7

See more details on using hashes here.

File details

Details for the file pyqt_liquidglass-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyqt_liquidglass-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyqt_liquidglass-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd41bff4df4ee9b61de454fb220a36ace2f25de804525161f5ab82dd9113ce53
MD5 6514b35585cb0f4bab3b12bb6ef047cc
BLAKE2b-256 3e067e3195c45e3cf44fee89ffd18e03e5afbc57632bacdddf7a597bac7fe59a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page