Skip to main content

ManyQt

ManyQt is a lightweight abstraction layer that enables developers to write applications with a single API targeting PyQt and PySide. It supports multiple Qt versions and bindings—PyQt4, PyQt5, PySide, PySide2, PyQt6, and PySide6—under a Qt5-style layout, where QtGui and QtWidgets are separated.

(Inspired from `QtPy <https://github.com/spyder-ide/qtpy>`_ and `AnyQt <https://github.com/ales-erjavec/anyqt>`_.)


Purpose & Benefits:

ManyQt simplifies cross-version and cross-binding development:

  • Write your code using standard Qt API patterns.

  • Import from manyqt instead of PyQtX or PySideX.

  • Seamlessly port between Qt4, Qt5, and Qt6.

  • Resolve incompatibilities automatically.

  • Incrementally migrate large codebases—module by module.


Requirements:

To use ManyQt, you must have one of the following libraries installed:

  • PyQt4

  • PyQt5

  • PyQt6

  • PySide

  • PySide2

  • PySide6

If multiple packages are available, ``PyQt5`` is selected by default unless overridden by an environment variable.


Selecting the Backend:

The active Qt binding can be set using the QT_API environment variable:

Value

Selects

pyqt4

PyQt4

pyqt5

PyQt5

pyqt6

PyQt6

pyside

PySide

pyside2

PySide2

pyside6

PySide6

Alternatively, you may also configure the API programmatically—as long as no other Qt libraries have been imported yet.


Features at a Glance:

Unified Namespace:

Provides a consistent, Qt5-compatible module layout with some minor renaming for portability.

Environment & Code-Based Selection:

Specify your preferred binding via:

  • QT_API environment variable.

  • Python code (early in execution).

Safe Import Hook (Optional):

Includes an import guard that:

  • Detects and blocks mixed Qt binding imports.

  • Emulates Qt4-style imports via Qt5-compatible monkey patching.

Simple Usage:

from os import environ
environ["QT_API"] = "pyqt5"  # or "pyqt4", "pyside", "pyside2", "pyqt6", "pyside6", to force a specific backend.
from ManyQt.QtWidgets import *
from ManyQt.QtCore import *
from ManyQt.QtGui import *

Metadata

Release files for ManyQt 0.4.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ManyQt 0.4.5
File Size Uploaded Provenance
manyqt-0.4.5.tar.gz 86.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ManyQt 0.4.5
File Interpreter ABI Platform
manyqt-0.4.5-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 207.5 kB

Release files / manyqt-0.4.5.tar.gz

Download URL manyqt-0.4.5.tar.gz
Size 86.6 kB
Tags Source
SHA-256 checksum
How to use checksums
c0da526a8a914eadb766c188b8bfafcb303cf8ce1cbdd9d82a456e682c079906
BLAKE2b-256 checksum
How to use checksums
5e4a8a1d972a27492d630af8b7f203085240779cb2bc2e81643e91e705b1180f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.1

Release files / manyqt-0.4.5-py2.py3-none-any.whl

Download URL manyqt-0.4.5-py2.py3-none-any.whl
Size 120.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
d7876977a8a6dc6dd5720d35e7600ec2ca86ad83bfa8bb7dfe69fc548f66f16b
BLAKE2b-256 checksum
How to use checksums
b705c3db9bddf7365c72565a74122aa6d01905f8df87695c2a0111eaef04aec8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.1

Security for ManyQt 0.4.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page