PySide6
Python bindings for the Qt cross-platform application and UI framework
What it is and what it does
PySide6 is the official Python binding layer for the Qt 6 framework, maintained by the Qt Company. It exposes Qt's comprehensive widget set, layout system, signal-slot mechanism, and platform abstraction to Python developers, allowing you to write desktop applications that run on Windows, macOS, and Linux with native look and feel. The package itself is an alias that installs two modular wheels—PySide6_Essentials (core UI and framework) and PySide6_Addons (extended modules)—plus shiboken6 (the C++ binding generator) and tomli (for configuration parsing).
You use PySide6 to build traditional desktop applications with event-driven architecture, custom widgets, and data models. It is production-stable (Development Status 5), actively maintained, and supports modern Python versions. The copyleft license (LGPL/GPL) means you can use it in proprietary applications under LGPL terms by allowing dynamic relinking, or choose GPL if you distribute source. The compiled dependencies and platform-specific wheels introduce medium install friction, but prebuilt binaries are available for common platforms.
Use it for:
- Build cross-platform desktop applications with native UI components and consistent behavior across Windows, macOS, and Linux.
- Create data visualization and analysis tools with custom widgets, charts, and interactive dialogs.
- Develop IDE-like applications or code editors with syntax highlighting, project trees, and dockable panels.
- Build system administration or configuration utilities with forms, tables, and real-time monitoring dashboards.
- Prototype or deploy scientific applications with native performance and professional UI polish.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
PySide6 provides Python bindings to the Qt 6.0+ framework, enabling you to build cross-platform desktop applications with native UI components and comprehensive framework features.
Yes. PySide6 is production-stable, actively maintained, and the official Qt binding for Python. Install it if you need a mature, feature-complete GUI framework for desktop applications on Windows, macOS, or Linux. Be aware of the copyleft license terms (LGPL-3.0 is typical for proprietary use) and the medium install friction from compiled dependencies. No known vulnerabilities.
Install
pyside6 on PyPI
pip
pip install pyside6uv
uv add pyside6poetry
poetry add pyside6Installing PySide6
Before you install
Medium install friction due to compiled C++ dependencies (shiboken6, PySide6_Essentials, PySide6_Addons) and prebuilt wheels for multiple platforms. Active maintenance with a release 93 days ago. Supports Python 3.10–3.14.
License in practice
Copyleft license (LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only). Distributing applications built with PySide6 requires compliance with one of these three licenses—typically LGPL-3.0 for proprietary applications, which permits linking without source disclosure if you allow dynamic relinking.
Quickstart
pip install PySide6
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton
app = QApplication([])
window = QMainWindow()
button = QPushButton("Click me")
window.setCentralWidget(button)
window.show()
app.exec()
Requires Python 3.10 or higher (up to 3.14). Prebuilt wheels are available for macOS 13+, Linux (manylinux_2_34+), and Windows; other platforms may require building from source with Clang 13.0+ and LLVM_INSTALL_DIR environment variable set.
Verify before relying
- Whether the medium install friction materially affects adoption or runtime stability in practice.
- Performance characteristics and memory footprint compared to other Python GUI frameworks.
- Completeness of Qt 6.0+ feature coverage in the current binding version.
Package facts
| License | LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only (copyleft) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 4 — shiboken6, PySide6_Essentials, PySide6_Addons, tomli |
| Maintenance | actively maintained — 93 days since the last release |
| First released | |
| Downloads | 3,593,035/month — #2,569 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyside6-6.11.1-cp310-abi3-macosx_13_0_universal2.whl; pyside6-6.11.1-cp310-abi3-manylinux_2_34_x86_64.whl; pyside6-6.11.1-cp310-abi3-manylinux_2_39_aarch64.whl; pyside6-6.11.1-cp310-abi3-win_amd64.whl; pyside6-6.11.1-cp310-abi3-win_arm64.whl
Keywords: Qt
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
PySide2PySide2 provides Python bindings to the Qt…
copyleft · top 15,000 on PyPI
PySide6-AddonsPySide6-Addons extends PySide6 with additional…
copyleft · top 5,000 on PyPI
PySide6-EssentialsPySide6 Essentials provides Python bindings to…
copyleft · top 5,000 on PyPI
QtPyQtPy provides a unified API for writing Qt…
permissive · top 5,000 on PyPI
qasyncqasync integrates asyncio coroutines into…
permissive · top 15,000 on PyPI
qtmonacoEmbeds the Monaco Editor (VS Code's editor)…
unclear · top 15,000 on PyPI
shiboken6Shiboken6 provides Python access to metadata…
copyleft · top 5,000 on PyPI
pyqtgraphPyQtGraph is a pure-Python graphics library for…
permissive · top 5,000 on PyPI
shiboken2Shiboken2 provides Python access to metadata…
copyleft · top 15,000 on PyPI
QDarkStyleQDarkStyle provides pre-built dark and light…
permissive · top 15,000 on PyPI